如何根据多人网页游戏的 game_id 将客户端请求路由到正确的服务器实例?

问题描述 投票:0回答:1

我正在开发一款多人网页游戏,需要根据 game_id 将客户端请求 (WebSocket) 从前端路由到正确的服务器实例(在 k8s 中)。同一游戏中的玩家必须连接到同一服务器实例。我计划通过使用集中式数据库来解决这个问题,该数据库将存储将实例服务器与 game_id 链接起来的信息。

但是,我在实现请求路由机制方面面临挑战(我正在联网n00b :( )。如何根据客户端提供的 game_id 有效地将这些请求路由到适当的服务器实例?是否有任何最佳实践或可扩展网页游戏架构中这种动态请求路由的模式?

我认为可能的解决方案是:

  • 自定义反向代理
  • 负载均衡器L7
  • 服务网格

你觉得怎么样?感谢您的任何回复

kubernetes google-cloud-platform networking url-routing infrastructure
1个回答
0
投票

您能否使用 Kubernetes 术语澄清一下“服务器”是什么意思?您的意思是“服务到 Pod”路由吗?如果是,我认为您可以使用 Service 对象上的 spec.SessionAffinity 来实现。如果您的意思是“服务入口”路由,您应该首先使用支持“粘性会话”的 IngressController。您使用哪个 IngressController?

© www.soinside.com 2019 - 2024. All rights reserved.