【问题标题】:Is it Possible to use only one gRPC Channel for 2 Pair Client/Server2对客户端/服务器是否可以只使用一个gRPC通道
【发布时间】:2021-03-09 23:57:58
【问题描述】:

我有一个用例迫使我使用 2 对客户端/服务器,例如: 我有 2 个进程,每个进程都在扮演客户端/服务器角色,因此我必须创建 2 对客户端/服务器。 我的问题是尽量减少创建 2 个 Channel 来实现这种通信的开销,我们是否有可能只使用一个 Channel?

注意:双流不会有帮助,因为在我的情况下,两个进程扮演服务器/客户端角色。

感谢您的进一步帮助。

【问题讨论】:

    标签: grpc grpc-dotnet


    【解决方案1】:

    创建服务器/客户端的开销实际上非常小(太小而无法在大多数应用程序中发挥任何重要作用。

    当我们说“创建一个新的 gRPC 通道有一些开销并且是昂贵的操作”时,它的意思是“与在已建立的通道上发送 RPC 相比更昂贵”。您不应该经常创建新通道/服务器(例如,为每个 RPC 创建一个新通道),但是在应用程序启动时创建一个新通道和服务器是非常合理的事情,除非您正在做一些高度专业化的事情,否则它是不值得考虑创建一些额外频道的开销。

    我不知道您的用例的详细信息,但我的一般反应是“不要在不必要的地方尝试过度优化”(您是否实际测量过影响 - 您可能会发现它完全可以忽略不计)我只需创建您需要的服务器/频道。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-05
      • 2018-04-12
      • 2020-10-18
      • 2016-10-04
      • 1970-01-01
      • 2017-03-30
      • 2020-12-16
      • 1970-01-01
      相关资源
      最近更新 更多