1、Nginx简介
根据Nginx官网说明可知:nginx [engine x]是最初由Igor Sysoev编写的HTTP和反向代理服务器,邮件代理服务器和通用TCP / UDP代理服务器。
2、Nginx负载均衡配置
a) nginx.conf是nginx的配置文件,在conf目录下边,其中#开头的都是注释。
b) 主要需要配置的是http模块下的内容
upstream mynginxserver{
server 172.16.10.228:8053 weight=5;
server 172.16.10.225:8050;
}
红框所标是转发的服务器地址,在项目中也就是部署的tomcat地址,只需配置ip和端口号即可。
配置nginx监听端口和转发的upstream。
配置负载均衡还要注意以下几点
1.$remote_addr 与$http_x_forwarded_for 用以记录客户端的ip地址;
2.$remote_user :用来记录客户端用户名称;
3.$time_local : 用来记录访问时间与时区;
4.$request : 用来记录请求的url与http协议;
5.$status : 用来记录请求状态;成功是200,
6.$body_bytes_s ent :记录发送给客户端文件主体内容大小;
7.$http_referer :用来记录从那个页面链接访问过来的;
8.$http_user_agent :记录客户端浏览器的相关信息;
c) 启动nginx,命令台进入nginx目录,
start nginx.exe --启动nginx
nginx.exe –s stop --停止nginx
nginx.exe –s reload–重启nginx
3、session共享
由于是负载均衡,所以Session需要共享,以下是使用Redis来存储Session达到共享目的。
1. 首先部署Redis
a) Redis安装包复制到服务器后,其中
redis-windows.conf是redis的配置文件,一般情况下只需要配置密码(可以不配置)
红框地方是密码。
b) 启动redis,打开控制台,进入到Redis根目录,
输入命令redis-server.exeredis.windows.conf
启动redis,成功界面如下:
2. tomcat配置,项目使用的是tomcat-redis-session-manager来把以前使用tomcat来存储session变成使用redis方式来存储,需要把
三个jar包复制到tomcat下的lib目录,然后配置tomcat管理session的方式:配置tomcat的context.xml文件,如下配置:
<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve"
/>
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
host="localhost"
port="6379"
database="0"
maxInactiveInterval="60000" />
host是redis服务器的ip,端口号是redis端口号,默认是6379.
关于实现Redis-Tomcat-session共享的jar包下载地址为https://download.csdn.net/download/jokinwu/10356820