时间:2022-10-16 11:23:15 | 栏目:Nginx | 点击:次
nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;nginx可以作为一个HTTP服务器进行网站的发布处理,另外nginx可以作为反向代理进行负载均衡的实现。
准备1台Nginx服务器和3台Tomcat服务器,并修改3台服务器中Tomcat的默认访问页面,用数字标记页面所处的服务器。
vim /usr/local/tomcat-api/webapps/ROOT/index.jsp
在nginx.conf文件中配置上游服务器
# 配置上游服务器,每一个IP都对应一台服务器 upstream tomcats { server 192.168.72.132:8080; server 192.168.72.133:8080; server 192.168.72.134:8080; } server { listen 80; server_name localhost; location / { proxy_pass http://tomcats; } }
注:proxy_pass为代理转发配置。
完成上述配置后,启动Nginx,用浏览器访问Nginx服务器的80端口,反复刷新页面,会发现请求依次被转发到了不同的服务器。这其实是Nginx负载均衡默认的策略:轮训,通过轮训策略,可以将请求平均分配给各个服务器处理。
根据不同服务器的性能,给各个服务器增加权重,比如某个服务器硬件配置比较好,就可以给该服务器分配更多的请求,同理分配比较少的请求给硬件配置较差的服务器。
配置如下:
upstream tomcats { # weight的值越大,分配到的请求就会越多 server 192.168.72.132:8080 weight=1; server 192.168.72.133:8080 weight=2; server 192.168.72.134:8080 weight=5; } server { listen 80; server_name localhost; location / { proxy_pass http://tomcats; } }