概述
负载均衡是一种常见的技术,我相信在互联网公司里面都会使用到。这篇文章我想详细,全面的讲讲互联网服务接入层的负载均衡,也算是自己对负载均衡技术的总结。
负载均衡按网络层次来划分,可以分为数据链路层负载均衡,网络层负载均衡,应用层负载均衡。在实际使用负载均衡技术时,并不是只使用一种技术,往往是多种技术搭配一起使用的,这样才能做到更高的SLA。
负载均衡技术一览
- 硬件负载均衡(如F5)
- LVS
- Nginx
- DNS轮询
负载均衡策略
- 轮询
轮询就是配置一个服务列表,按列表顺序分发请求,每个服务分配的请求的都是均等的。 - 最少连接数
当前哪个服务连接数最少就分配给哪一个服务。 - 最短处理时间
计算服务处理请求时间,将请求发给处理请求最快的服务。 - 随机
按一定随机算法分配请求到各个服务。 - 加权随机
相比与完全随机,加权随机适用于服务处理能力有差异的情况 - Generic Hash
一般Hash, 这是相对于IP的Hash来讲,可以自定义字段来进行hash,比如在Http的Header里的某个值。 - IP Hash
对请求IP做一致性Hash
先写到这,有点晚了,明天继续。关于接入层负载均衡,有要补充的欢迎留言。