nginx的学习笔记,第五记。

本文深入探讨Nginx作为负载均衡软件的角色,其稳定性及支持的动静分离特性。介绍了常见的负载均衡算法如轮询、权重分配、IP哈希、公平调度及URL哈希,并对比了四层和七层负载均衡的区别及优缺点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,总结nginx:他是负载均衡的软件。足够的稳定,支持动静分离。nginx主要是用在应用http请求这块。

常见的负载均衡的设备:F5 硬件设备非常贵,lvs是基于linux的系统层面的,非常快,非常稳定,不支持动静分离。

2,算法:

轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端的服务器down掉,能自动剔除。

weight

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

ip_hash

每个请求按访问ip的hash结果分配,这样每个访客,固定一个后端服务器,可以解决session问题。

fair(第三方)

按后端服务器的响应时间来分配请求,响应时间短的优先分配。

url_hash

按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。

----------------------------------------------------------------------------------------------------------------------------------

所谓的四层就是基于IP+端口的负载均衡;

七层就是基于URL等应用层信息的负载均衡;

同理,还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。

换句话说,二层负载均衡会通过一个人虚拟的MAC地址接收请求,然后再分配到真是的MAC地址;三层负载均衡会通过一个虚拟IP地址

接收请求,然后再分配到真实的IP地址。

四层通过虚拟IP+端口接收请求,然后再分配到真实的服务器;

七层通过虚拟的URL或者主机名接收请求,然后再分配到真实的服务器。

----------------------------------------------------------------------------------------------------------------------------------

优缺点:

七层负载均衡也称为“内容交换”,也就是主要通过报文中的真正有意义的应用层内容,再加上负载均衡设置设置的服务器选择方式,决定最终的内部服务器。

以常见的TCP为例,负载均衡设备如果要根据真正的应用层内容再选择服务器,只能先代理最终的服务器和客户端建立连接(三次握手)后,才可以接收到

客户端发送的真正应用层内容的报文,然后再根据改报文中的特定手段,再加上负载均衡设备设置的服务器选择方式,决定最终的内部服务器。负载均衡在

这种情况下,更类似于一个代理服务器。负载均衡和前端的客户端以及后端的服务器分别建立TCP连接。所以从这个技术原理上来看,七层负载均衡明显的

对负载均衡设备的要求更高,处理七层的能力也必然低于四层模式的部署方式。更智能。

 

转载于:https://www.cnblogs.com/fuckingPangzi/p/10140967.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值