是否可以开始?它在gRPC FAQ中说:
我可以将gRPC与我最喜欢的数据格式(JSON,Protobuf,Thrift,XML)一起使用吗?
是。 gRPC设计为可扩展以支持多种内容类型。初始版本包含对Protobuf和外部支持其他内容类型,例如FlatBuffers和节俭,成熟度各不相同。
但是我还没有找到关于此的任何文档?具体来说,我想从Python客户端(Thrift)到Go中的gRPC服务器写信。
否,您不能让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。