2013-01-16 116 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