gRPC 可以用来编写多人游戏等实时应用程序吗?

Ber*_*aya 1 multiplayer game-development go server grpc

最近,我一直在阅读有关 Google 的 gRPC 的内容。我想知道对于像多人游戏这样的实时应用程序来说这是否是一个不错的选择。

例如,我们可以使用 gRPC 构建一个用于实时多人游戏的游戏服务器吗?

Dyl*_*ink 7

然而,实时多人游戏通常更喜欢使用 UDP 而不是 TCP 来进行流式传输,因为 TCP 由于重新排序和数据包确认等功能可能会产生大量延迟。

gRPC 运行使用 HTTP/2,而 HTTP/2 使用 TCP,这在某些情况下不适合。

然而,这并不能阻止您使用协议缓冲区(gRPC 使用的消息序列化)(如果这是您喜欢的功能)。

  • @BerkeKaanCetinkaya 几乎任何东西都适用于回合制游戏。唯一真正需要考虑的是“延迟对你的游戏是否重要”。gRPC 不是实现极低延迟的解决方案,您正在比较两个不同的轴。 (5认同)
  • 在每毫秒都很重要的游戏中,不建议这样做,但您仍然可以将其用于非延迟敏感的数据传输,例如游戏地图、分数、聊天。 (2认同)