1
我有一個使用nio的java聊天應用程序它現在工作正常。我想用同一個portno將我的聊天服務器分成兩部分。java中的服務器到服務器通信 - 負載均衡
簡單:
- 我想我的單服務器分割成兩個或三個。當客戶端
登錄時,它首先連接到第一臺服務器。 - 當第一臺服務器有10個客戶端時,第11個客戶端必須 連接到第二臺服務器。和相同的機制第三 服務器。
- 這三臺服務器必須具有相同的端口號。
- 這些服務器必須具有內部通信。如果客戶端1是 登錄到服務器1。獲取的任何細節服務器1應該是 已知的服務器2和服務器3。
- 在服務器1的客戶端必須與客戶這 在服務器2和服務器3
我怎樣才能讓這些可能是有與此相關的任何實例進行通信。我GOOGLE了它,但找不到任何合適的解決方案。
請指導我解決這些問題。
非常感謝。
關於你的第四個需求,我想你需要一個共享數據庫或類似的東西,這樣所有的服務器都是同步的。 – Sikorski 2012-07-30 04:20:20
@Sikorski你的意思是一個溫室表,當客戶端登錄的細節將賴於該表。如果是這樣的話,它將可用於所有服務器,並在客戶端註銷時被刪除。如果在某個時間5k客戶端登錄到服務器,它可能需要很多時間(如果我錯了,我會糾正)。 – Amith 2012-07-30 04:31:03
這不是api問題,它是一個設計問題。任何時候,你都可以調查其他工具,比如用於配置管理的Apache ZooKeeper,或者利用Message Queue等。 – qrtt1 2012-07-30 05:21:49