Python & Go 之 gRPC

Python & Go 之 gRPC.
这里作为一个 example repo, 方便老手应用

https://github.com/HaoweiCh/go-py-grpc

项目代码放于此

Python 作为客户端被调度

  • 服务端
    • go run . -p 1234
  • 客户端
    • /usr/local/bin/python3.9 py/client.py

聊聊好处, 对于业务强相关需要业务迭代优于代码健壮的场景来说 Python 写起来很爽, 简单直白.
当然性能上一直是需要硬件去体谅的.
在 io 密集的应用场景基本上不存在优化价值.

有开发过 SaaS 业务的道友在某些页面要求加载延迟低于一秒的场景下,
或者内部服务模块延迟过大需要优化
或者新模块安排给新团队做都可能会涉及到内部通讯

相信很多人和我一样喜欢 Golang 语言设计哲学中的“用网络通讯数据优于内存共享数据”,
在这里相对 Python 的 subprocess fork 来进行优化多核性能, 客观来说 gRPC 会是更优选择.

issue “pip instal grpcio” fail on macOS 13

目前 gRPC 只支持 x86_64 版本的 Python

References