搭建Web集群环境,通常使用nginx+redis的方式。nginx实现请求的分发,也就是所谓的负载均衡;redis实现session共享,请求在多台服务器之间切换时,保证session的一致性。
1.获取redis
redis各版本的下载地址为 http://download.redis.io/releases/,根据需求下载对应版本即可。
这里以4.0.2版本为例。
2.安装gcc
安装redis需要先将官方下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,则需要安装。
查看gcc版本
gcc -v
如果未安装gcc,提示gcc 命令未找到,则需安装gcc。执行以下命令来完成gcc安装。
yum -y install gcc
3.安装redis
tar zxvf redis-4.0.2.tar.gz(解压当前文件)
mv redis-4.0.2 /usr/local/(将解压后的目录移动到/usr/local目录下)
cd /usr/local/redis-4.0.2/(进入该目录)
make
make install
make test
执行 make test如果报如下错误
You need tcl 8.5 or newer in order to run the Redis test
那么需要下载安装 tcl
执行以下命令来下载 tcl
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
依次执行以下命令 来安装 tcl
tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
cd /usr/local/tcl8.6.1/unix/
./configure
make
make install
然后回到 redis的目录
cd /usr/local/redis-4.0.2/
执行
make test
下图表示所有测试均正常通过。
至此,redis的安装完毕。
4.配置redis
找到 /usr/local/redis-4.0.2/redis.conf文件
88行
protected-mode no
第136行
daemonize 改为yes
默认情况下redis不是在后台运行的,如果需要在后台运行,把该项的值更改为yes。
69行
bind 127.0.0.1 注释掉
bind 是IP的限制,注释掉就是不限制了
启动 redis
redis-server /usr/local/redis-4.0.2/redis.conf
查看启动的redis进程, redis-server的那个
ps -ef|grep redis
kill -9 进程号 可以停止redis服务
5.Tomcat配置
将tomcat-redis-session-manage-tomcat7.jar
jedis-2.5.2.jar、commons-pool2-2.2.jar
拷贝到$TOMCAT_HOME/lib中(即tomcat根目录下的lib文件夹中)。
jar没有的下载地址为:
http://files.cnblogs.com/files/linjiqin/tomcat-redis-session.rar
修改两个tomcat的context.xml,加入以下内容:
<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
host="192.168.3.51"
port="6379"
database="0"
maxInactiveInterval="60" />
其中host为redis服务的地址,port为redis服务的端口,database根据具体情况设置,默认设置为0,maxInactiveInterval为session的有效时长,默认为60秒。