我有一臺服務器在我的的java web應用和數據庫 服務器駐留。爪哇 - 如何從服務器發送通知到客戶端
現在我web應用程序的客戶有兩種類型 :
- ClientType1
- ClientType2
都可以訪問數據庫。
ClientType1將數據存儲在數據庫中。
ClientType2從數據庫中檢索數據。
但ClientType1應該開始 數據庫 存儲數據時ClientType2說 開始。
相若方式ClientType1應停止在數據庫中存儲 數據時的ClientType2說停止
================== ================================================== =======
Q1。這個問題的解決方案是什麼?
下面是我想的辦法:
創建有一列,顯示狀態開始或停止與此列的值應該由ClientType2設置的數據庫中的表。 ClientType1將繼續向數據庫發送查詢以從該表獲取狀態並根據狀態執行操作。
從ClientType2應用ServerPush方法,通過該服務器將保持與ClientType1活着的連接,將請求發送給他,每當它接收到的命令(開始或停止) 。這種方法的問題是,沒有。在服務器開放套接字的數量將隨着增加的數量而增加。的ClientType1
您能解釋一下「客戶端向服務器註冊自己」是什麼意思。 – 2011-03-20 11:50:13
@Yatendra,即*客戶端*發起與*服務器*的聯繫,該服務器可以保留所有*客戶端*的隊列。該隊列可用於仲裁客戶端之間的數據庫訪問。例如,servern可以將'start'和'stop'命令依次發送給隊列中的客戶端。總之,您可以在網絡上應用「聽衆」概念。 – 2011-03-20 11:55:00