(當然,甚至可以在.Net中使用)。如何在服務器端事件中註冊客戶端事件偵聽器?
最終,我想完成的是一個基於AJAX的消息傳遞系統。 我已經有一個消息數據庫表和一個ASPX添加新消息(並宣佈舊消息不再相關)。
當前消息傳遞系統每15秒鐘輪詢一次服務器,並重新提取當前消息集。
我所希望做的是: 在$(文件)。就緒(),註冊,對於服務器端事件監聽一個ajax回調函數(例如,MessagesUpdated) 表中插入/更新,火MessagesUpdated服務器端。
這樣,無論何時更新表(或添加新記錄),任何偵聽的客戶端都知道新數據可用,然後可以重新輪詢服務器。
理想情況下,我還想將新數據作爲事件參數提供(以最大限度地減少重新輪詢數據庫)。
我可以在其他語言中找到類似這樣的參考,但我找不到任何實際的代碼示例來啓動我。
假設通過.Net可以做到這一點,任何人都可以幫助我開始呢?
我正在使用2.0框架。 另外,雖然我添加了VB.Net標記,但我可以很好地閱讀C#,所以請隨時以任一種語言發佈。
在此先感謝!
皮特
這是Facebook的工作方式在牆上的更新上,我相信。 – 2011-12-28 18:19:13
謝謝大家的建議!經過廣泛的研究,並給予我的可用服務器,我相信長輪詢是要走的路(服務器將不支持WebSockets,並且SignalR降級到長輪詢,當服務器不支持WebSockets時)。 – pete 2011-12-29 14:53:31
Facebook(甚至twitter,Hotmail也是)每隔幾秒鐘輪詢一次服務器。這樣就容易多了。你可以使用小提琴來自己檢查。他們不必擔心訂閱者和發佈者。他們獲得了超過50萬臺服務器,因此規模不成問題。他們可以完成用戶/發佈者模型,但他們沒有。 – 2012-10-16 19:29:46