代码之家  ›  专栏  ›  技术社区  ›  cwap

通过网页检查更新有哪些好策略?

  •  0
  • cwap  · 技术社区  · 16 年前

    你们中有人知道在Web服务器上检查更新的一些好策略吗?

    我想了很久facebook的起始页面和stackoverflow页面都在这里。但是,我需要在不重新加载整个页面的情况下加载新数据。

    目前,我考虑让javascript“计时器”在页面生命周期内工作,如果输入了任何新数据,则轮询Web服务器。我们的目标范围是~2000个浏览器同时执行此操作,因此我真的不希望对旧数据和新数据进行全面的平等性检查。

    我使用的是ASP.Net,所以我认为实现这一点的一个好方法是在会话变量中存储一个“last datapolling time”变量,然后在输入此客户端应该接收的新数据时更新该时间。你觉得这可行吗?

    3 回复  |  直到 16 年前
        1
  •  2
  •   deamon    16 年前

    我不熟悉.Net,但我可以告诉您如何使用Java servlet解决它。Net中的解决方案应该类似。

    我将创建一个Servlet作为REST资源,其中包含特定URL和一个lastModified方法,该方法根据内容状态(和当前用户)进行应答。客户端将使用HTTP头轮询资源的当前状态。只有在上次请求后对其进行了修改时,客户端才会发送GET请求。如果服务器知道资源至少会保持多长时间不被修改,他可以发送一个expires头。然后,客户机将在到期后开始轮询。

        2
  •  1
  •   RHicke    16 年前


    您可以将此信息缓存到某个位置,这样就不会在每次查找新数据时都进行全面的相等性检查。您需要将上次更新时间存储在服务器上的某个位置,如果该时间比客户端时间新,您将知道有新数据要加载

        3
  •  1
  •   Tim Hardy    16 年前

    Tomasz Janczuk开发了一个 stand-alone javascript library 这将处理Silverlight功能的客户端。