2013-01-16 117 views
0

我正在建设一个拍卖网站,目前还有一些问题,我仍然没有解决方案...如何在网站推送通知(如Facebook)。当中标者被其他竞标者超越时,我需要在屏幕上显示。网站推送通知

我试着用间隔ajax(拉请求)它花了很多服务器资源。

请大家帮忙。

感谢

回答

0

间隔AJAX是最糟糕的解决方案。使用一些实时API,如PUSHER

Example

2

基本上,你想要的 “长轮询” 或 “即时响应的功能”。你应该看看长轮询(推技术),理解它,然后选择合适的语言,技术和架构来适应这项工作。

In a web/AJAX context, long polling is also known as Comet programming.


如果你想建立“东西像Facebook那样”你会需要大量的研究分为以下和一些JavaScript技能。它是您将使用的唯一语言。

  • Node.js:可以使用套接字向浏览器传递实时更新的后端服务器。
  • Backbone.js的:建立一个网页应用“像Facebook”

的半结构化的方式我还包括Require.js到基本上是用来加载所有的骨干异步的JavaScript文件列表。它有助于保持应用程序的文件结构可维护。


最后,很高兴看到您已经意识到定期提取数据的缺点;因为这会使服务器收费。研究长轮询,你会学到很多有用和有趣的东西:)记住 - 选择适合这项工作的工具。

0

如果你只需要支持现代浏览器,也许HTML5 WebSockets的可能是一个解决办法:

http://www.html5rocks.com/en/tutorials/websockets/basics/

它们允许你“听”在浏览器中的数据。但是,如果您必须支持旧版浏览器,则必须使用其他建议的解决方案。

+0

一个拍卖网站(特别是)不能在浏览器中挑剔用户之间的公平竞争的精神,并可能给予不公平的优势,是吗?认为如果您使用的是不受支持的浏览器,易趣无法更新您的出价... – Jimbo

+0

好的,公平的观点..没有想到这么远。 –

+0

我会说你的帖子绝对是内容丰富的,值得留在这里为未来的观众! :) – Jimbo