我有一個網頁,並使用CRUD操作在MySQL表中進行一些數據操作。有很多桌面客戶端應用程序的運行實例與同一個數據庫進行通信,每當我通過網頁對此數據庫進行更改時,都需要將這些客戶端通知有關更改。我不知道如何處理這個問題的最佳方式。桌面客戶端應用程序是用C#編寫的。另外,我知道,至少在使用ADO.NET提供程序的MySQL中,無法異步通知桌面客戶端數據庫中發生的更改。收聽MySQL中的數據庫更改
當客戶端應用程序定期創建數據庫連接並檢查更改MySQL表時,有一個選項。但是如果我們有1000個正在運行的實例並且每個創建連接並每隔2秒讀取一張表呢?數據庫服務器資源消耗是不是很重要?
此外,我們可以寫上插入/更新觸發器/刪除其填充約所做的更改另一個表,之後我們將要查詢該新的「CHANGES_MADE」表。
也有是創建套接字服務器,輪詢「CHANGES_MADE」表中的一個選項,如果更改時則變化的數據發送給所有桌面客戶端這是在這種情況下套接字監聽。因此,我們將擺脫客戶端進行的輪詢,並顯着減少數據庫連接和數據庫負載的總量。
在這裏,我想知道什麼是解決這些任務的最正確和可擴展的方法。
這個問題非常廣泛,很容易變成資源請求。保持它不是一個資源請求,我最近回答[這裏](http://stackoverflow.com/a/35381581)與本機非第三方鏈接。 – Drew