【问题标题】:Bingo game Java server architecture宾果游戏 Java 服务器架构
【发布时间】:2011-05-27 10:04:03
【问题描述】:

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

请建议哪种架构会更好,例如使用套接字或 Web 服务调用

谢谢

【问题讨论】:

    标签: java


    【解决方案1】:

    我更喜欢网络服务,因为

    • 不依赖于客户端的防火墙规则
    • 无需实现低级协议(对于套接字而言是必需的)
    • XML 将来更容易扩展
    • 具有 HTTPS 的安全基础架构可用且易于实施

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

    【讨论】:

    • 感谢您的建议。如果我们使用 Web 服务,请建议我们如何在不刷新页面的情况下为客户端发送基于服务器的消息(响应),例如宾果卡数据。可能一些工作示例代码会有所帮助谢谢
    • @js4learn 你希望服务器主动发送消息吗?然后你应该看看 WebSockets。否则,您实现一个无状态会话 bean 并将其标记为 @WebService,方法应该是返回 @WebResult 的 @WebMethod。客户端可以调用该方法并接收卡片数据。
    【解决方案2】:

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

    1. 如果您实施套接字服务器,您将不得不处理 Web 服务器已经处理的许多扩展和性能问题,以及会话管理问题

    2. 如果您使用 80 以外的任何端口,很可能会被 ISP 或防火墙(尤其是配合防火墙)阻止。

    但是你提到你使用的是 Flash,如果你想使用 web 服务,我必须提醒你,有一个错误,即使用户使用的是 firefox 或 chrome,flash 也只会发送 IE cookie,因此基于会话管理在 cookie 上可能有 flash 问题。

    【讨论】:

    • 谢谢。请建议我们如何解决 FireFox 或 Chrome 的 IE 会话 cookie 问题,因为应用程序也需要支持这些浏览器
    猜你喜欢
    • 1970-01-01
    • 2013-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-12
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多