要求:我們要推動信息給客戶,當新通知到來。它幾乎就像一個消息通知或廣播。它可能適用於多個用戶。
在ASP.NET Web應用程序中需要它。
任何解決方案?
要求:我們要推動信息給客戶,當新通知到來。它幾乎就像一個消息通知或廣播。它可能適用於多個用戶。
在ASP.NET Web應用程序中需要它。
任何解決方案?
一種方法是使用Ajax
來完成這個功能.... 使用經典的Ajax獲得響應,如果新的通知到達...呼叫SetTimeOut
不斷調用這個函數的AJAX每次時間間隔後...如果任何新的通知已經到達,你會得到它在你的ajax響應....如果它在那裏,你可以使用這個響應以任何你想要的方式顯示給客戶...你可以在http://www.w3schools.com/ajax/ajax_xmlhttprequest_send.asp
技術上最合適的解決方案很簡單:web-sockets。它們的設計正是爲此而設計的,而大多數實時需求的主要站點都傾向於工作。這確實是如何在這裏實時更新stackoverflow的工作。這裏的小故障是一些瀏覽器(ok,IE)不支持它們 - 所以如果更新很重要,你需要一個回退。
接下來的選項就像長輪詢和重複輪詢。兩者都有效。
有一些工具可以支持所有可行的選項,並自動選擇最合適的抽象方法。 SignalR就是這樣一個工具。
如果這是一個很好的,我會說網絡套接字。如果這是一個要求,可以是web-sockets-plus-polling-fallback或類似SignalR。
不錯的解決方案。它是連續輪詢機制。在這種情況下,服務器在一個時間點變得忙碌。如果它是按需的話,那麼它就沒問題。任何意見? –
是的,你是正確的關注是有....但它也取決於多少響應你通過ajax作爲weel作爲沒有用戶...還有一種方法是延長超時間隔... –