【问题标题】:What technologies are used in a seemingly 'live' data driven website?在看似“实时”的数据驱动网站中使用了哪些技术?
【发布时间】:2012-03-22 10:11:46
【问题描述】:

也许标题可以稍微改写一下,但基本上我想知道 Facebook 之类的公司是如何在新通知/消息等方面实现“实时”界面的。我知道这样一个社交网络背后的复杂性太在这个小的 SO 线程中有很多要讨论的内容,但是如果有人对用于几乎立即通知用户新记录(我假设 DB 记录)而使用的技术有任何想法,那么我很想听到它。

如果我猜的话,我会说客户端代码上有计时器,它们会通过 AJAX 定期检查数据库,然后做出相应的反应。是这样吗?

【问题讨论】:

    标签: ajax database facebook social-networking data-driven


    【解决方案1】:

    它通过Comet 和通过 node.js 或类似的基于非线程的 Web 服务器进行长轮询。

    如果我猜的话,我会说客户端代码上有计时器,它们会通过 AJAX 定期检查数据库,然后做出相应的反应。是这样吗?

    你说对了一部分。客户端打开一个连接,服务器只有在它有东西要返回给客户端时才会响应。

    【讨论】:

    • 哦,我明白了,我从没想过以这种方式使用 Ajax;始终旨在从服务器立即(或至少最快)响应。
    【解决方案2】:

    我认为他们正在尝试使用 HTML5 WebSockets,但作为后备,他们使用 Comet、AJAX、具有良好后端的长池。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-19
      • 2016-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-06
      相关资源
      最近更新 更多