尽管我已经在 Java SE 中工作了很长一段时间,但大约一个月前我才开始使用 Java 进行 EE 和 Web,如果这个问题看起来有点幼稚,请原谅......
所以情况是这样的:我正在尝试编写一个基于 JS 的具有实时交互的多人游戏(我们在这个例子中说国际象棋,尽管它是什么特定的游戏并不重要,可以是网球或 w/曾经)。客户端将通过 JS 调用与服务器交互,发送移动等。现在,虽然我可以从一个客户端接收移动并将其直接传递给另一个玩家,但不在服务器上维护游戏状态将意味着放置一个巨大的标志说“欢迎用户 JS 脚本”(这是没有经验的——我自己“破解”了这种垃圾)。这给我带来了我的问题——我如何在几个会话之间共享一个有状态的对象?想到的一个想法是一个单例存储有状态 bean 的 Hashmap & 然后每个会话都可以通过它的哈希来检索 bean,但我不知道这是多么正确(对于这样一个相当常见的事情来说,它似乎相当复杂)。将它与应用程序范围联系起来似乎也有点矫枉过正......
PS我确实知道该对象需要并发管理等,我似乎无法弄清楚如何共享它......
编辑:很抱歉我之前没有提到它——使用 Glassfish,EE6。