负载均衡(Load Balance):将请求分摊到多个操作单元上进行执行。来自客户端的请求通过负载均衡机制被将分发到各个服务器。
负载均衡在实现上可以使用硬件、软件的方式。
常用负载均衡算法
静态负载均衡算法:各种随机和轮询算法
采用随机算法进行负载均衡在集群中相对比较平均,使用Random()就可以实现随机。
加权轮循算法同样按照权重,顺序循环遍历服务提供者列表,到达上限之后重新归零。
动态负载均衡算法
所有涉及权重的静态算法都可以转变为动态算法,因为权重可以在运行过程中动态更新。例如动态轮询算法中权重值基于对各个服务器的持续监控并不断更新。基于服务器的实时性能分析分配连接是常见的动态策略。类似的动态算法还包括最少连接数算法和服务调用时延算法。