微型grpc框架,如烧瓶
homi的Python项目详细描述
霍米
微型grpc框架,如烧瓶
安装
pip install homi
特色
- [x] 无需配置即可运行服务器
- [x] 使用decorator模式连接服务方法
- [x] 自动解析请求数据到dict,不使用grpc请求对象
- [x] 自动设置参数
- [x] 支持所有grpc服务类型(一元一元、一元流、流一元、流流)
- [x] TLS支持
- [x] 只返回dict类型,而不是grpc对象
示例
检查更多example
^{pr2}$服务实例
服务类类似于flask的蓝图。您可以基于服务分离文件或添加其他人创建的服务。 另外,我们将来还可以重写已经注册的方法。在
fromhomiimportApp,Server,Servicefromhomi.extend.serviceimportreflection_service,health_servicefromhelloworld_pb2importDESCRIPTORapp=App(services=[reflection_service,health_service,])greeter=Service(DESCRIPTOR.services_by_name['Greeter'])@greeter.method()defSayHello(name,**kwargs):print(f"{name} is request SayHello")return{"message":f"Hello {name}!"}# you can share service to pypiapp.add_service(greeter)
运行服务器
# if app file name is app.py homi run # run ohter app file homi run other_app.py # change port homi run -p 50055# change total worker homi run -w 5# run TLS server homi run --private_key server.key --certificate server.crt
关系项目
- grpc_requests:人类的GRPC!python grpc反射支持客户端
更改日志
- 在
0.1.7款
- 修复错误
- 从init.py中删除HomiRealServerTestCase,HomiTestCase,请直接导入测试类
- 添加加密依赖项
- 修复错误
- 在
0.1.6款
- 特色
- #30:支持atls服务器[实验性]
- 特色
- 在
0.1.5节
- 特色
- #29:支持tls服务器
- 特色
- 在
0.1.1节
- 修复错误
- #23:更改支持python version>;=3.8(对于TypedDict)
- #22:移除处理程序包装自变量
- 修复错误
- 在
0.1.0款
- 打破改变!!!#十九
- 添加应用程序
- 现在你必须使用App类制作服务器!在
- 添加服务
- 可以按服务或方法分隔代码。在
- 添加配置
- 现在你可以在应用程序中使用服务配置和覆盖
- 添加应用程序
- 打破改变!!!#十九
- 在
0.0.4.α
- 添加真实的服务器测试用例
- 支持grpc运行状况
- 在
0.0.3
- 支持所有方法类型
- 添加flak8皮棉
- 添加测试用例
- #9自动解析响应消息
- 在
0.0.1(初始化项目)
- 使用cli运行服务器
- 地狱世界的例子
- 项目
标签: