grpc 适合发布订阅模型么

2020-03-08 21:43:51 +08:00
 DinoStray

最近在做一个发布订阅模型的服务.
首次尝试用了用 grpc, 发现用的很难受.

我的理解, grpc 只适合 单次调用 的模型, 这个单次调用可以一次传入多个请求, 也可以返回多个结果(也就是 grpc 里的 stream 概念), 但这种调用, 是不适合做长服务的. 最好能在有限时间内尽快结束调用.

个人的结论是, grpc 不适合做发布订阅模型, 虽然理论上可以通过 stream 解决, 但不符合 rpc 的理念.

包括 grpc 里的单次传入 /返回分配 id 概念(一旦 id 分配达到最大值, 直接 close 连接), 其实都是这种理念的体现(最好能在有限时间内尽快结束调用).

请大家评论下我的想法正确性

1522 次点击
所在节点    问与答
1 条回复
undeflife
2020-03-08 22:15:27 +08:00
Google's Cloud Pubsub 就是用 grpc 实现的
客户端代码 你可以参考
https://github.com/googleapis/googleapis/blob/master/google/pubsub/v1/pubsub.proto

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/651010

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX