nginx负载均衡实例
nginx负载均衡
1、实现效果
浏览器地址栏输入http://192.168.159.33/edu/a.html
,负载均衡效果,平均8080和8081端口中
2、准备工作
(1)准备两台tomcat服务器,一台8080端口,另一台8081端口。
(2)在两台tomcat里面的webapps目录中,创建名为edu文件夹,在edu文件夹中创建页面a.html用于测试
8080:
a.html:
<h1>8080!</h1>
8081:
a.html:
<h1>8081!</h1>
3、在nginx的配置文件中进行负载均衡的配置
只列出部分
upstream myserver{
server 192.168.159.33:8080;
server 192.168.159.33:8081;
}
server {
listen 80;
server_name 192.168.159.33;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
proxy_pass http://myserver;
index index.html index.htm;
}
测试
随着不断地刷新,页面的内容也在8080和8081不断地切换,因为默认地负载均衡策略是轮询,分别请求8080端口和8081端口。
4、nginx负载均衡策略
4.1 轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器宕机,能自动剔除。
4.2 权重(weight)
weight代表权重,默认为1,权重越高被分配的客户端越多
例如
upstream myserver{
server 192.168.159.33:8080 weight=5;
server 192.168.159.33:8081 weight=10;
}
4.3 ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。例如
upstream myserver{
ip_hash;
server 192.168.159.33:8080;
server 192.168.159.33:8081;
}
4.4 fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream myserver{
server 192.168.159.33:8080;
server 192.168.159.33:8081;
fair;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2020-10-22 GridControl控件单元格居中显示