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