【问题标题】:Periodic Query or Other Implementation: Java and Http定期查询或其他实现:Java 和 Http
【发布时间】:2010-07-09 04:38:34
【问题描述】:

考虑一下,有几个用户正在使用我的 Java 应用程序。 我正在使用 Http Common Apache 从 Http Server GET/POST 获取各种用户数据。

此客户端应用程序中有一个模块触发当前页面编号。文档(user1 打开)。我希望其他用户(User2,User3,....UserN)知道页面编号。用户 1 已打开。

所有用户都应该在一个时间间隔内监听/查询 HTTP 服务器吗?我认为这不是一个好主意。

我怎样才能实现这一点,以便最大限度地减少服务器上的负载。

【问题讨论】:

    标签: java apache apache-commons


    【解决方案1】:

    长轮询: 客户端打开与您的服务器的连接,并且服务器仅在 user1 更改页面时发送响应(考虑您的示例)。如果您的应用程序的客户端数量不是很大,这将非常有用。

    用户查询: 如果在您的应用程序上动态更新页码不是硬性要求,那么通过提供链接来查询页码将是一个不错的选择。这将提高服务器性能。

    【讨论】:

      【解决方案2】:

      您需要在服务器应用程序中使用 Comet(长轮询)以避免定期轮询。 J2EE 6 将支持它。 Developing with Comet and Java 描述了如何在 J2EE 5 中实现它。

      其他一些服务器端平台不太适合 Comet(例如 PHP)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-01-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-16
        • 1970-01-01
        • 2016-10-17
        相关资源
        最近更新 更多