Nginx+Tomcat实现负载均衡、动静分离的原理解析
一、nginx 负载均衡实现原理
1、nginx 实现负载均衡是通过反向代理实现
反向代理(reverse proxy) 是指以 代理服务器(例:nginx) 来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器(例:tomcat),并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器(例:nginx)对外就表现为一个反向代理服务器。
我们从客户端的视野来看,实际上客户端并不知道真实的服务提供者是哪台服务器,它只知道它请求了反向代理服务器。因此反向代理这种方式又对外隐藏了真实服务器的地址,从一定程度上降低了安全隐患。
2、nginx 配置反向代理的主要参数 upstream 服务池名 {}
作用:配置后端服务器池,以提供响应数据
proxy_pass http:// 服务池名
作用:配置将访问请求转发给后端服务器池的服务器处理
二、nginx 动静分离实现原理
1、动静分离原理
服务端接收来自客户端的请求中,既有静态资源也有动态资源,静态资源由 nginx 提供服务,动态资源由 nginx 转发至后端。
2、nginx 静态处理优势
nginx 处理静态页面的效率远高于 tomcat 的处理能力
若 tomcat 的请求量为1000次,则 nginx 的请求量为6000次
tomcat 每秒的吞吐量为0.6m,nginx 的每秒吞吐量为3.6m
nginx 处理静态资源的能力是 tomcat 处理的6倍
三、nginx + tomcat 动静分离、负载均衡配置步骤 环境准备
主机 | 操作系统 | ip地址 | 所需软件 |
---|---|---|---|
nginx server | centos7 | 192.168.109.7 | nginx-1.12.0.tar.gz |
tomcat server1 | centos7 | 192.168.109.22 | apache-tomcat-9.0.16.tar.gz、jdk-8u201-linux-x64.rpm |
tomcat server2 | centos7 | 192.168.109.23 | apache-tomcat-9.0.16.tar.gz、jdk-8u201-linux-x64.rpm |
2、部署两台 tomcat 应用服务器
3、动静分离配置
请看tomcat
1)tomcat1 server 配置
2)tomcat2 server 配置
3)nginx server 配置
4、访问测试
测试静态页面效果
浏览器访问 http://192.168.109.7/
浏览器访问 http://192.168.109.7/long.jpg
测试负载均衡效果,不断刷新浏览器测试
浏览器访问 http://192.168.109.7/test/index.jsp
到此这篇关于nginx+tomcat实现负载均衡、动静分离的原理解析的文章就介绍到这了,更多相关nginx负载均衡、动静分离内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!