ELB类型
我们在AWS控制台创建负载均衡器类型时,会发现有三个选项可以选择,分别是应用负载均衡器(ALB),网络负载均衡器(NLB),经典负载均衡器(CLB)。下面会介绍这三种负载均衡器的特别。
三种ELB场景
经典负载均衡器(Classic Load Balancer)
AWS第一代负载均衡器,支持4层协议(TCP/UDP)和7层协议(HTTP/HTTPS)。
- 优势:价格便宜,容易上手
- 劣势:效果没有NLB/ALB好
应用程序负载均衡器(Application Load Balancer)
ALB的名字为应用程序负载均衡器,支持7层协议(HTTP/HTTPS/WebSocket),不支持4层协议(TCP/UDP)。
- 优势:支持基于Host和Path的转发;支持粘性会话;性能比CLB好;支持按比例的流量转发;可编辑安全组
- 负载均衡算法:默认算法为轮询算法,还可以使用最少未完成请求算法
网络负载均衡器(Application Load Balancer)
NLB的名字为网络负载均衡器,支持4层协议(TCP/UDP)。
- 优势:性能最好,每秒支持百万次请求,不需要预热(ALB和CLB流量大的话需要预热扩充负债均衡服务节点);NLB的ip地址不会改变(CLB和ALB会随着时间改变,另外NLB可以分配固定弹性ip,ALB不能)
- 负载均衡算法:默认算法为哈希算法
ALB和NLB选择和区别
当客户的业务基于HTTP/HTTPS/Websocket时候,优先考虑使用ALB。
NLB可以处理7层的流量,但NLB不解析7层的协议,不会对协议进行处理。
如果选择了ALB,则处理不了4层的流量,主要取决于选择的负载均衡器类型。