簡體   English   中英

具有多個服務器的客戶端-服務器體系結構

[英]Client-Server architecture with multiple servers

我正在開發一個應用程序,其中有兩個多線程服務器(Server1和Server2)。 我正在將數據保存在Map中的這兩個服務器中。 我要做的是在服務器之間進行負載平衡(兩個服務器上的數據量相同)。 所以我有兩個問題:

1)如何將客戶端隨機連接到服務器? 例如,當我啟動一個客戶端時,該客戶端連接到Server1,而當我啟動另一個客戶端時,該客戶端連接到Server2。

2)我可以使用什么技術在服務器中進行負載平衡?

最好的祝福。

在兩個服務器之間分配負載的一種非常簡單的解決方案是使用輪詢DNS 這里的基本思想是,所有DNS請求(由您的客戶端)將不僅解析為單個IP地址,而且將解析為它們的列表 (在您的情況下為兩個)。 反過來,這意味着它們將有效地連接到任一服務器。

這種方法的簡單性(缺點)是,每個返回的IP地址的概率不是 100 / n (其中n是列表中的地址數)。 我只是想強調一點,不一定是50%(對於兩個)。

現在,如果您想要真正的負載平衡,那么可以研究一下放在Server1Server2前面的負載平衡設備。 這樣的事情會更加可靠,但是您的成本/復雜性也會增加。

對於最簡單的解決方案,我將研究輪詢DNS。

您可能正在尋找ReverseProxy 有很多解決方案,取決於您的項目,一個可能比另一個更合適。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM