运营网站是什么意思,要怎么做网站动图,dw做网站链接,推荐网站在线看兄弟们什么是负载均衡
Nginx是一个高性能的开源反向代理服务器#xff0c;也可以用作负载均衡器。通过Nginx的负载均衡功能#xff0c;可以将流量分发到多台后端服务器上#xff0c;实现负载均衡#xff0c;提高系统的性能、可用性和稳定性。
如下图所示#xff1a;
Nginx负…什么是负载均衡
Nginx是一个高性能的开源反向代理服务器也可以用作负载均衡器。通过Nginx的负载均衡功能可以将流量分发到多台后端服务器上实现负载均衡提高系统的性能、可用性和稳定性。
如下图所示
Nginx负载均衡策略
Nginx内置负载均衡主要分为以下种类
轮询
轮询简单理解就是将请求在机器之间进行平均分配在轮询这种方式中也有分为两类轮询策略 1、普通轮询 可以理解为各个服务器的权重占比都为1请求会轮流进入这些服务器 2、权重轮询 在轮询基础上分配服务器的权重占比。比如服务器1配置2服务器2配置1那么最终请求分配到两台机器的数量会趋近于服务器1服务器221 具体配置方式如下
http {# 普通轮询配置# 定义转发分配规则upstream myapp1 {server srv1.com; # 要转发到的服务器如ip、ip:端口号、域名、域名:端口号server srv2.com:8088;server 192.168.0.100:8088;}# 权重轮询配置# 定义转发分配规则upstream myapp1 {server srv1.com weight1; # 该台服务器接受1/6的请求量server srv2.com:8088 weight2; # 该台服务器接受2/6的请求量server 192.168.0.100:8088 weight3; # 该台服务器接受3/6的请求量;
}server {listen 80; # nginx监听的端口location / {# 使用myapp1分配规则即刚自定义添加的upstream节点# 将所有请求转发到myapp1服务器组中配置的某一台服务器上proxy_pass http://myapp1; }}
}
iphash 对客户的请求的IP进行hash操作根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理可以解决session不共享的 这个方法确保了相同的客户端的请求一直发送到相同的服务器这样每个访客都固定访问一个后端服务器。如用户需要分片上传文件到服务器下然后再由服务器将分片合并这时如果用户的请求到达了不同的服务器那么分片将存储于不同的服务器目录中导致无法将分片合并该场景则需要使用ip hash策略。 需要注意的是ip_hash不能与backup同时使用另外当有服务器需要剔除必须手动down掉此模式适合有状态服务比如session。 具体配置方式如下
# 定义转发分配规则
upstream myapp1 {ip_hash; # #保证每个请求固定访问一个后端服务器server srv1.com;server srv2.com:8088;server 192.168.0.100:8088;
}
最少连接 轮询算法是把请求平均的转发给各个后端使它们的负载大致相同但是有些请求占用的时间很长会导致其所在的后端负载较高。这种情况下least_conn这种方式就可以达到更好的负载均衡效果适合请求处理时间长短不一造成服务器过载的情况。 具体配置方式如下
# 定义转发分配规则
upstream myapp1 {least_conn; # 把请求分派给连接数最少的服务器server srv1.com;server srv2.com:8088;server 192.168.0.100:8088;
}
Nginx安装
具体可以看我之前的一篇文档Nginx安装以及卸载教程