如何跨不同服务器维护用户和游戏状态?

How to maintain user and game state across different servers?

我有一个基于 php、javascript 和 MySQL 的基于浏览器的多人问答游戏。如果我放置负载均衡器和自动缩放器来扩展我的游戏,那么我担心将如何处理以下情况:

  1. 用户在 server-1 上连接,一段时间后断开连接。
  2. 稍后当玩家加入游戏时,负载均衡器将此玩家的请求发送到server-2。
  3. 那么我的播放器以前的数据现在如何在 server-2 上可用。

基本上什么是 跨不同服务器维护游戏和玩家状态的好选择。

您可以拥有不同的 HTTP 服务器(PHP 和 Javascript)而没有问题,但是您需要有一个 MySQL 数据库。然后,播放器连接到哪个PHP服务器都没有关系,所有服务器只需要从同一个数据库中获取数据即可。

如果您还需要为数据库使用不同的服务器,我建议您查看 MySQL Clustering