3

我要开始一个宠物项目,把这个棋盘游戏带入网络。为简单起见,想象一下 pvp 国际象棋。

我对这种异步编程的经验很少。唯一的一个 - 我使用 sinatra 的流媒体功能写了一个简单的聊天。

我有两个密切相关的问题:

  • 我应该如何组织游戏流程?我应该将游戏状态存储在数据库中吗?或者我可以有一个类,例如游戏,并将所有内容存储在其中吗?第二个选项听起来更容易,更自然,但是是否可以在具有客户端-服务器异步性质的应用程序中实现它?

  • 客户端应该如何与服务器交互?我希望实时更新董事会状态。js EventSource 是这里的最佳选择吗?除了带有 stream 关​​键字的 Sinatra 应用程序之外,我还需要什么吗?我需要 EventMachine 吗?

4

0 回答 0