前言:
如今小伙伴们对“nginx多个root存在时”大约比较重视,我们都想要了解一些“nginx多个root存在时”的相关资讯。那么小编在网上收集了一些有关“nginx多个root存在时””的相关资讯,希望咱们能喜欢,姐妹们一起来学习一下吧!1. 概述
本文档基于Nginx+Redis+Tomcat实现session共享和负载均衡。
负载均衡(Load Balance),是分布式系统中一个非常重要的概念。当访问的服务具有多个实例节点时,需要根据某种"均衡"的策略决定请求发往哪个节点,这个过程就是所谓的负载均衡。多在高并发情况下需要使用。其原理就是将数据流量分摊到多个服务器执行,减轻每台服务器的压力,多台服务器(集群)共同完成工作任务,从而提高了数据的吞吐量。
Nginx是一个轻量级、高性能、稳定性高、并发性好的HTTP和反向代理服务器。反向代理对象为服务端做代理,使客户端不需要感知服务端的存在,只需要访问代理服务器便可获得想要的结果。实现限流、负载均衡、动静分离等。
Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串、链表、集合和有序集合。支持在服务器端计算集合的并、交和补集等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务器。
2. 原理
将session数据集中存储,然后不同Web服务器从同样的地方获取Session。
3. Redis安装、部署3.1Redis概述
Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串、链表、集合和有序集合。支持在服务器端计算集合的并、交和补集等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务器。
3.2Redis下载地址
(如果已有安装包,将安装包放到相关目录下)
Redis安装目录/usr/local/
[root@bogon ~]# cd /usr/local/
[root@bogon local]# wget
3.3解压缩
[root@bogon local]# tar -zxvf redis-5.0.5.tar.gz
3.4编译、安装
[root@bogon local]# cd redis-5.0.5
[root@bogon redis-5.0.5]# make
[root@bogon redis-5.0.5]# make install
3.5修改Redis目录下redis.conf配置文件
[root@bogon redis-5.0.5]# vi redis.conf
Insert
#69行,修改bind,bind 127.0.0.1表示只能本机使用
bind 0.0.0.0
#92行,修改默认端口,查找 port 6379 修改为相应端口即可
port 6379
#113行,当客户端闲置多长时间后关闭连接,如果指定为0,表示关闭该功能。
timeout 300
#136行,redis将以守护进程的方式运行,默认为no会暂用你的终端,yes支持后台启动方式
daemonize yes
#507行,修改默认密码,查找 requirepass foobared将foobared修改为你的密码
requirepass 1234qwer
3.6启动Redis
/usr/local/bin/redis-server /usr/local/redis-5.0.5/redis.conf
3.7停止Redis
进程号杀掉关闭redis:kill -9 pid
命令方式关闭redis
[root@bogon ~]# cd /usr/local/redis-5.0.5/src
[root@bogon src]# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> info
NOAUTH Authentication required
127.0.0.1:6379> auth 1234qwer
OK
127.0.0.1:6379> shutdown [NOSAVE|SAVE]
not connected> exit
3.8将Redis加入开机启动
vi /etc/rc.local
#在里面添加内容:
/usr/local/bin/redis-server /usr/local/redis-5.0.5/redis.conf
3.9检查是否启动成功
[root@bogon ~]# ps -ef|grep redis
3.10卸载Redis
rm -rf /usr/local/redis-5.0.5//删除redis解压文件夹
rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本
rm -rf /usr/local/redis-5.0.5.tar.gz //删除redis安装包
4. Nginx安装、部署4.1Nginx概述
负载均衡(Load Balance),是分布式系统中一个非常重要的概念。当访问的服务具有多个实例节点时,需要根据某种"均衡"的策略决定请求发往哪个节点,这个过程就是所谓的负载均衡。多在高并发情况下需要使用。其原理就是将数据流量分摊到多个服务器执行,减轻每台服务器的压力,多台服务器(集群)共同完成工作任务,从而提高了数据的吞吐量。Nginx是一个轻量级、高性能、稳定性高、并发性好的HTTP和反向代理服务器。
反向代理:代理对象为服务端做代理,使客户端不需要感知服务端的存在,只需要访问代理服务器便可获得想要的结果。实现限流、负载均衡、动静分离等。
4.2所需依赖包
yum install gcc-c++
yum install pcre pcre-devel
yum install zlib zlib-devel
yum install openssl openssl--devel
4.3Nginx下载地址
(如果已有安装包,将安装包放到相关目录下)
Nginx安装目录/usr/local/
[root@bogon ~]# cd /usr/local/
[root@bogon local]# wget
4.4解压缩
[root@bogon local]# tar -zxvf nginx-1.9.9.tar.gz
4.5编译、安装
[root@bogon local]# cd nginx-1.9.9
#默认安装在/usr/local/nginx
# --prefix=<path>:Nginx安装的根路径
[root@bogon nginx-1.9.9]#./configure --prefix=/usr/local/nginx
[root@bogon nginx-1.9.9]# make
[root@bogon nginx-1.9.9]# make install
4.6修改Nginx目录下nginx.conf配置文件
[root@bogon nginx-1.9.9]# cd conf
[root@bogon conf]# vi nginx.conf
基于ip_hash实现session:
upstream server {
ip_hash;
server 192.168.200.129:80; #第一台负载的ip及端口
server 192.168.200.131:80; #第二台负载的ip及端口
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass ;
proxy_redirect default;
}
}
4.7Nginx命令
#启动
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#停止
关闭进程方式:
kill -9 pid
命令行方式:
/usr/local/nginx/sbin/nginx -s stop
#重新载入配置文件
/usr/local/nginx/sbin/nginx -s reload
4.8将Nginx加入开机启动
vi /etc/rc.local
#在里面添加内容:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
4.9检查是否启动成功
[root@bogon conf]# ps -ef|grep nginx
root 13651 1 0 12:07 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nobody 13652 13651 0 12:07 ? 00:00:00 nginx: worker process
4.10卸载Nginx
rm -rf /usr/local/nginx-1.9.9 //删除nginx解压文件夹
rm -rf /usr/local/nginx-1.9.9.tar.gz //删除nginx安装包
5. Tomcat配置文件修改
Tomcat版本:8.0.50.0
JVM Version:1.7.0_80-b15
修改tomcat/conf/context.xml配置文件增加Valve,Manager配置。
在<Context>标签下 新增以下内容
<Valve className="com.naritech.nicole.gump.RedisSessionHandlerValve" />
<Manager className="com.naritech.nicole.gump.RedisSessionManager"
host="127.0.0.1"//Redis所在服务器地址
port="6379"
password="1234qwer"
database="0"
maxInactiveInterval="60"
/>
6. Tomcat下引入相关jar包
commons-pool2-2.3.jar
jedis-2.7.3.jar
tomcat-redis-session-manager-master-2.0.0.jar
将以上3个jar包拷贝到tomcat的相关目录,如下:
/usr/local/tomcat/lib
7. 启动顺序
先启动redis,然后启动tomcat,最后启动nginx。
(云渺书斋)
如有转载请标明出处,本文地址
标签: #nginx多个root存在时