为了账号安全,请及时绑定邮箱和手机立即绑定

用容器部署在线游戏如何保证玩家websocket不断?

用容器部署在线游戏如何保证玩家websocket不断?

倚天杖 2018-10-19 09:32:52
容器是无状态的,在线游戏要有状态,多个用户的状态在多个容器内时,要对容器增减会造成游戏中断。这种情况如何保证正在连接的websocket不断?如果用容器编排工具kubernetes等会有解决方案吗?或者从业务逻辑上考虑?
查看完整描述

2 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

正常的游戏服务器都有网关架构的
玩家只连接网关。由网关来负责连接后端服务器,换线不需要重新登录就是这么玩的。
重启游戏服务器的时候,先让网关连接其他服务器。然后把需要重启的服务器重启,最后重新接上网关

查看完整回答
反对 回复 2018-10-28
?
森林海

TA贡献2011条经验 获得超2个赞

  1. 通过前端负载均衡来保持链接,后端来处理逻辑可以解决

  2. 在容器被杀死前对容器内部的应用发起广播,前端的负载均衡不将新的请求转发到内部容器,然后内部应用向客户端发起重新链接的请求,客户端接到请求后创建第二个socket请求,待发起成功后将旧的socket断开

没做过相关内容,仅供参考


查看完整回答
反对 回复 2018-10-28
  • 2 回答
  • 0 关注
  • 1652 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信