四、Nginx负载均衡实例

一、负载均衡概念

单个服务器解决不了,我们增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡
四、Nginx负载均衡实例_第1张图片

1、实现效果

(1)浏览器地址栏输入http://192.168.1.173/edu/a.html,让请求平均分发到8080和8081端口中。

2、准备工作

(1)准备两台tomcat服务器,一台8080,一台8081
在/usr/src文件夹下,创建tomcat8080、tomcat8081两个文件夹,将apache-tomcat-7.0.70包分别解压到其下。然后将tomcat8081的server.xml将端口号改为8081。具体怎么改看–》
三、nginx反向代理
四、Nginx负载均衡实例_第2张图片

(2)在两台tomcat里面webapps目录中,创建名称为edu的文件夹,文件夹中创建测试页面a.html,用于测试显示端口号。

3.在nginx的配置文件中进行负载均衡的配置

四、Nginx负载均衡实例_第3张图片

4.重启nginx,测试效果

谷歌浏览器开启无痕窗口,不然负载均衡效果出不来。
四、Nginx负载均衡实例_第4张图片
测试
四、Nginx负载均衡实例_第5张图片
刷新一下
四、Nginx负载均衡实例_第6张图片

Nginx的分配策略

1.轮询(默认)

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

2.weight(权重)

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

upstream server_pool{
server 192.168.5.21 weight=5;
server 192.168.5.22 weight=10; 
}

3.ip_hash

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

upstream server_pool{
	ip_hash;
	server 192.168.5.21:80;
	server 192.168.5.22:80; 
}

4.fair(第三方)

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

upstream server_pool{
	server 192.168.5.21:80; 
	server 192.168.5.22:80;
	fair; 
}

你可能感兴趣的:(Nginx,nginx,负载均衡,tomcat)