一般使用七层代理也就是http应用层代理,可以反向代理和负载均衡。但是项目要使用长连接,此时内网服务器肯定不能暴漏,还是需要接入层网关进行转发,一般有使用lvs,lvs专门用作四层代理和负载均衡基于内核态,并发量很大。但是lvs配置相对复杂,我们的这个项目长连接数不会太多,所以不需要使用lvs。就直接使用nginx的四层代理,nginx的四层代理需要使用nginx的stream模块在编译的时候需要编译进去
实验准备:2台nginx服务器作反向代理,1台nginx服务器作四层反向代理,2台tomcat服务器(tomcat,tomcat1,tomcat2)1台客户机做访问
tomcat在上一节已配置完毕
1.负载均衡服务器 192.168.6.151 做四层反向代理 连接七层代理服务器
2.中间nginx服务器 192.168.6.157 做七层反向代理 动静分离 连接tomcat后台服务器
3.tomcat 服务器 分别为:192.168.6.152:8080
192.168.6.152:8081
192.168.6.154:8080
首先负载均衡服务器配置:(四层代理)
1. 编译安装with-stream块
2. 安装编译依赖包
3. 编译安装配置
1.在http块上面配置stream模块
2 .配置端口号一个做web站点另一个作反向代理
vim nginx.conf
- stream {
- upstream backer_server{
-
- 192.168.6.157:80;
-
- }
-
- server {
- listen 9090; ####监听9090端口作反向代理转发接口
- proxy_pass backer_server; ###后面直接跟负载均衡服务器池名就可以了###七层协议后面加协议
- }
-
-
- }
1.配置动静分离
2.配置反向代理(连接后端tomcat服务器)
nginx七层代理服务器(配置动静分离连接后端服务器)
nginx准备的静态页面:
tomcat服务器:
位置在cd /usr/local/tomcat1/webapps/test/index.jsp 下
添加访问路径
1.修改端口
2.加入路径
另一台tomcat配置和第一台tomcat一致
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
JSP test2 page #指定为 test2 页面
<% out.println("动态页面 2,http://www.test2.com");%>
客户端直接访问http://192.168.6.151:9090/index.jsp 四层代理服务器
访问静态页面: