Nginx -学习

所谓 负载均衡 就是:就是把大量的请求按照我们指定的方式均衡的分配给集群中的每台服务器,从而不会产生集群中大量请求只请求某一台服务器,从而使该服务器宕机的情况。

一,nginx 反向代理

实现负载均衡之前我们要实现 反向代理 ,即请求到某个域名,默认该请求被nginx接受到,然后nginx根据配置,类似DNS解析,nginx会根据配置把特定的请求转发到对应的服务器

我们修改nginx 的 conf/nginx。conf 配置文件如上图两个地方

实现效果:使用nginx 反向代理,访问www.localhost:80.com 直接跳转到 127.0.0.1:8080

二,nginx 负载均衡

实现效果

浏览器地址栏输入地址 http://127.0.0.1/myweb/index.jsp, 负载均衡效果,将请求平均分配到8080和9999两台服务器上。

准备工作

(1)准备两台tomcat服务器,一台8080,一台9999

(2)在两台tomcat里面webapps 目录中创建一个小项目如:myweb/index.jsp

实现负载均衡的几种方式

声明:实现负载均衡方式有很多,配置完一种后面的大差不差,我们主要讲解第一种

1,轮询 (默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器

 down掉,能自动剔除。

	# 反向代理配置
	upstream server_list{
	   # 这个是tomcat的访问路径
	   server localhost:8080;
	   server localhost:9999;
	}
	server {
	        listen       80;
	        server_name  localhost;
	
	        location / {
	            root   html;
				proxy_pass http://server_list;
	            index  index.html index.htm;
	        }
	
	        error_page   500 502 503 504  /50x.html;
	        location = /50x.html {
	            root   html;
	        }
	    }

使用 两台服务器,拷贝一个tomcat

 修改 conf 文件下面 server.xml 配置文件,分别修改三个端口号

<Server port="18005" shutdown="SHUTDOWN">

<Connector port="9999" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
               
<Connector port="18009" protocol="AJP/1.3" redirectPort="8443" />    

 修改两台 tomcat 服务器下面 webpps\ROOT\index.jsp

分别加上标记,用以区分

<h1>main</h1>

<h1>back</h1>

这里是插入图片描述

 

 2,weight 权重

weight 代表权重,默认为 1 ,权重越高被分配的客户端越多

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

# 反向代理配置
upstream server_list{
# 这个是tomcat的访问路径
server localhost:8080 weight=5;
server localhost:9999 weight=1;
}

 3,ip_hash

每个请求访问ip的hash值分配,这样每个访问客户端会固定访问一个后端服务器,可以解决会话

Session 丢失的问题

upstream backserver { 
		ip_hash; 
		server 127.0.0.1:8080; 
		server 127.0.0.1:9090; 
}

 不管刷新多少遍,始终访问的是同一台Tomcat服务器

4,最少链接

web请求会被转发到链接数量最少的服务器上

upstream backserver { 
	least_conn;
	server 127.0.0.1:8080; 
	server 127.0.0.1:9090; 
}	

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值