学习笔记(09):高并发下的Nginx性能优化实战-Nginx负载均衡(一)

立即学习:https://edu.csdn.net/course/play/27216/358406?utm_source=blogtoedu

Nginx负载均衡

轮询法(默认)

将请求按照顺序轮流地分配到后端服务器上,它均衡地对待后端的每一台服务器,不关心服务器实际的连接数和当前的系统负载

加权轮询法

不同的后端服务器可能机器的配置和当前系统的负载并不相同,因此其抗压能力也不相同

给配置高、负载低的机器配置更高的权重,让其处理更多的请求

配置低、负载高的机器,给其分配较低的权重,降低其系统负载

加权轮询能很好的将请求顺序按照权重分配给后端服务器

weight(权重)值越大分配到的访问概率越高

源地址哈希法

根据获取客户端的IP地址,通过哈希函数计算得到一个数值

用该数值对服务器列表的大小进行取模运算,得到的结果便是客户端要访问服务器的序号

采用源地址哈希法进行负载均衡,同一IP地址的客户端,当后端服务器列表不变时,它每次都会映射到同一台后端服务器进行访问

可以保证来自同一ip的请求达到固定的机器上,可以解决session问题

只需要在配置文件upstream中加上ip_hash

最小连接法

见文知义,将请求分配到连接数最少的服务器上

只需要在配置文件upstream中加上least_conn

Fair

比weight、ip_hash更加智能的负载均衡算法

此为第三方法则,Nginx本身并不支持,如果需要这种调度算法,需要安装upstream_fair模块

可根据页面大小和加载时间长短智能的进行负载均衡,即根据后端服务器响应时间进行分配

url_hash

按访问的URL的哈希结果来分配请求,使每个URL定向到一台后端服务器

可以进一步提高后端缓存服务器效率

Nginx本身不支持url_hash,如果需要这种调度算法,必须安装Nginx的hash软件包

发布了13 篇原创文章 · 获赞 3 · 访问量 330

猜你喜欢

转载自blog.csdn.net/qq_40152865/article/details/104207135