一開始可以這樣嗎?gRPC 常見問題解答中寫道:我可以將 gRPC 與我最喜歡的數據格式(JSON、Protobuf、Thrift、XML)結合使用嗎?是的。gRPC 被設計為可擴展以支持多種內容類型。初始版本包含對 Protobuf 的支持以及對不同成熟度級別的其他內容類型(例如 FlatBuffers 和 Thrift)的外部支持。但我沒有找到任何有關此的文檔?具體來說,我想從 Python 客戶端 (Thrift) 與用 Go 編寫的 gRPC 服務器進行對話。
1 回答

函數式編程
TA貢獻1807條經驗 獲得超9個贊
不,您不能讓 Python Thrift 客戶端與 Go gRPC 服務器進行通信。
有兩個相似但相關的東西被混合在一起:RPC 協議和消息模式/IDL/格式。
Thrift 和 gRPC 之間的 RPC 協議是不同的。它們不可互操作。這就是您所要求的,所以這就是為什么答案是否定的。
gRPC FAQ 說可以使用 protobuf 以外的東西作為消息模式/IDL/格式。因此,這將允許 Python gRPC 客戶端與 Go gRPC 服務器通信,但使用 Thrift 消息。grpc-ecosystem/grift包含一些未維護的代碼,允許從 Thrift IDL 文件生成 gRPC 存根,但它不支持 Python。
- 1 回答
- 0 關注
- 101 瀏覽
添加回答
舉報
0/150
提交
取消