2011-05-27 120 views
3

我打算开发基于多用户回合的网页宾果卡游戏,使用Flash为客户端UI和基于Java的服务器应用程序。我需要决定是否可以使用Flash中的套接字与Java进行通信,或者使用Flash客户端的Web服务调用。要求我们需要将随机生成的宾果卡数据从服务器发送到基于浏览器的玩家,并且还需要将玩家数据存储到数据库。宾果游戏Java服务器架构

请建议该架构将像使用套接字或Web服务调用

感谢

回答

6

更好,我更喜欢的Web服务,因为

  • 不依赖于客户端防火墙规则
  • 没有必要执行低级别协议(必需的插座)
  • XML更容易在未来
  • 安全基础设施与HTTPS可用且易于扩展以实现

你可能想看看的WebSockets(HTML5的一部分)

+0

感谢您的建议。如果我们使用Web服务,请建议我们如何发送基于服务器的消息(响应),如客户端的宾果卡数据,而不刷新页面。可能有些工作示​​例代码会有帮助谢谢 – js4learn 2011-05-27 10:43:19

+0

@ js4learn你希望服务器**主动**发送消息吗?那么你应该看看WebSockets。否则,你实现一个无状态会话bean并将其标记为@WebService,这些方法应该是@WebMethod返回一个@WebResult。客户可以调用该方法并接收卡数据。 – Thor 2011-05-27 11:25:29

0

我建议RESTful网络服务。使用套接字编程肯定是一个坏主意。

  1. 如果要实现套接字服务器,你必须处理许多已经由Web服务器处理的缩放和性能问题,和会话管理问题太

  2. 如果您正在使用的任何端口不是80,很可能被ISP或防火墙阻止,特别是合作防火墙。

但你提到你使用的是Flash,我要提醒你,如果你想使用Web服务,有其闪光只会送过来IE浏览器的cookies,即使用户使用的是Firefox或Chrome中的错误,所以基于cookie的会话管理可能会遇到闪存问题。

+0

谢谢。请建议我们如何解决FireFox或Chrome的IE会话cookie问题,因为应用程序也需要支持这些浏览器 – js4learn 2011-05-27 10:44:37