我是grpc的第一个学者。我认为这是一个丑陋的问题。 使用grpc-go创建一个简单的聊天应用程序。想要实现的东西是这样的。 @ clientA、clientB、clientC中的每一个都连接到serverA,并且都有双向流连接。例如,您想通知clientA、B、C clientD已经接入serverA,有什么实现方式? How to broadcast in gRPC from server to client? gRPC: How can I distinguish bi-streaming clients at server side? 我已经读过这些帖子了,但我想知道最佳实践。 例如
用于创建通道的gRPC C++ API返回一个shared_ptr。生成的函数NewStub返回一个unique_ptr。然而,我看到尝试创建多个存根类型的实例,共享一个通道。他们的解决办法是共享存根。
从文档或API中还不清楚客户端是要创建多个存根实例,共享通道还是共享单个存根。请澄清存根、通道和独特的客户端连接之间的概念关系。
深入一点:服务器可以提供多个服务,客户机端点可以使用单个通道将相应的存根类型连接到每个服务。为此,显然不同的存根类型共享与服务器端点对话的单一通道。gRPC是否期望一个给定服务的每个通道只有一个客户端,还是在客户端点上可以有多个客户端与单个服务进行对话?如果允许,如
今天下午运行的实例很好,但是突然这个错误开始弹出。它假定调用函数并成功地写入分类账,但拒绝这样做:
Too many requests for /protos.Deliver, exceeding concurrency limit (2500)
peer0.org1.xxx.com-hold-em_1-c068ec292dc2ab380801d4f31ca83c6b86104d5adf00d7ee78b940a7a7381c02] func2 -> INFO 1402c 2020-06-16T05:43:20.627Z info [c-api:lib/handler.js]