gpt4 book ai didi

load-balancing - 负载均衡器 - 如何为自定义应用程序编写一个?

转载 作者:行者123 更新时间:2023-12-04 10:31:49 25 4
gpt4 key购买 nike

我编写了一个简单的服务器应用程序,它将在多台机器上分布式运行。

我的问题是网络负载平衡器一般是如何工作的?

我听说过循环和其他算法,但我没有得到答案的是这个过程是如何进行的?在套接字方面。

客户端连接到其中一台负载平衡器机器,请求“免费连接”服务器并简单地连接到它?
这是我能想到的最简单的方法。
.. 或者,它是否使用负载平衡器作为代理(这意味着所有 NB 必须始终连接到应用服务器,并且数据通过它们传输)?

这更像是一个普遍的问题。你会怎么做?

谢谢你们!

最佳答案

有几种不同的方法可以对应用程序进行负载平衡。有些是位于路由器和服务器之间的物理设备;有些是基于一些代码的软件,可以在每个负载平衡设备上运行。

微软在 Windows 中内置了负载平衡,它完全基于软件。它非常好且易于设置。

但是,我将介绍物理路线。

这里有几种算法,但主要的算法是带有“粘性” session 选项的循环。在这种情况下,粘性意味着负载均衡器将 试试 保留客户端的历史记录并将来自同一客户端的请求转发到同一台机器。这意味着负载平衡器需要保留一个客户端列表以及它引导这些客户端的位置。根据缓存大小,客户端可能会从列表中删除,并且在 future 的请求中,它们可能会被转发到不同的服务器。

Round Robin 是一个非常简单的想法。对于传入的每个请求,将其发送到列表中的下一个服务器。更复杂的算法可能会考虑到特定服务器的请求数量以及这些请求需要多长时间;然后尝试重新平衡新请求以支持更快的服务器。虽然这部分很复杂。

关于load-balancing - 负载均衡器 - 如何为自定义应用程序编写一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2907569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com