以下情景:我們已經有了一個數據庫表,其中存儲了用戶的新郵件。當用戶運行我們的客戶端應用程序時,應用程序需要顯示一個新圖標,當該用戶的條目插入到數據庫表中時,該圖標已經到達。如何爲大約100個客戶實現「新郵件圖標」?中央服務器輪詢或本地客戶端輪詢?
大約100個用戶將同時登錄。據我看到他們
兩個解決方案:
- 落實中央服務器上的服務。該服務器定期輪詢數據庫。此外,客戶端在啓動時需要向服務器註冊,以便在用戶的新消息到達時可以回撥它們。好:數據庫民意調查較少。不好:爲中心元素編碼更多。
- 每個客戶都自行輪詢數據庫。輪詢需要每分鐘發生一次,所以我有100個客戶每分鐘輪詢一次數據庫。餿主意?還是可以嗎?
所以,你會去哪個選項?
我們使用.NET 4.0作爲我們的客戶和MS SQL Server 2008作爲數據庫。
此外,如果你投的解決方案1:請問WCF服務是一個好主意?任何關於我的情況的鏈接或想法將不勝感激。
謝謝大家!
關於如何實現這樣的WCF服務的任何想法? – ManOnAMission
是的。看看[this](http://msdn.microsoft.com/query/dev10.query?appId=Dev10IDEF1&l=EN-US&k=k%28SYSTEM.SERVICEMODEL.SERVICECONTRACTATTRIBUTE.CALLBACKCONTRACT%29;k%28CALLBACKCONTRACT%29;k% 28TargetFrameworkMoniker-%22.NETFRAMEWORK%2cVERSION%3dV4.0%22%29; k%28DevLang-CSHARP%29&rd = true)以獲取關於如何實現雙工消息交換的一些指導。它應該允許服務器在客戶端建立連接之後觸發客戶端的回調。 –