所有配置均在一台机器上完成,部署拓扑信息如下:

注意:由于Redis配置对jar包和tomcat版本比较严格,请务必使用tomcat7和本文中提供的jar包。下载地址:

http://pan.baidu.com/s/1bO67Ky

tomcat:  tomcat1  localhost:8080

tomcat2  localhost:9080

nginx:    localhost:1210

redis:     localhost:6379

1. tomcat的安装和配置


1. 在server.xml文件中,修改tomcat2的端口,总共需要修改3处,分别是8080、8005和8009,分别修改为9080、9005和9008。

配置完此步,在浏览器中输入http://localhost:8080 和 http://localhost:9080便可看到tomcat的首页了。

2. nginx配置,实现负载均衡。


2.1  安装PCRE。因为nginx的rewrite模块需要pcre支持,所以需要安装pcre库。

2.1.1. 获取pcre编译安装包,在http://www.pcre.org/上可以获取当前最新的版本

2.1.2. 解压缩pcre-xx.tar.gz包。

2.1.3. 进入解压缩目录,执行./configure。

2.1.4. make

2.1.5. make install

2.2 安装nginx。由于yum源中没有我们想要的nginx,因此需要创建一个yum源。步骤如下:

2.2.1. vim /etc/yum.repos.d/nginx.repo

输入以下内容,然后保存退出。

[nginx]
         name=nginx repo
         baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
         gpgcheck=0
         enabled=1

2.2.2. 查询一下yum源是否配置好,执行以下命令,若有结果,说明配置成功。

yum list |grep nginx

2.2.3. 安装nginx。

yum -y install nginx

2.2.4. 配置nginx。实现负载均衡。主要是配置nginx.conf文件,利用 rpm -qc nginx命令查询该配置文件的位置。

2.2.5 检查配置文件是否正确,并重启nginx。

nginx -t

service nginx restart     此处也可用如下命令: nginx -s reload

2.3 验证负载均衡配置

2.3.1 分别修改tomcat1和tomcat2首页文件,获取登录的session id值,添加下图中红框的H1标签

2.3.2  在浏览器输入: localhost:1210,检查是否配置成功。可以看到,已经跳转到tomcat页面了,配置成功。

3. Redis配置,Tomcat共享session。


3.1 下载并安装Redis3

3.1.1 进入Redis官网下载Redis3,步骤略。

3.1.2 解压文件

tar -xvf redis-3.0.2.tar.gz

3.1.3 编译安装。

cd redis-3.0.2

make

make install

./utils/install_server.sh  # 配置redis随机启动

3.1.4 Redis的启动和关闭。

service redis_6379 start  #6379为redis默认端口号,根据需求修改后,服务名会变

service redis_6379 stop

service redis_6379 restart

3.2  配置Tomcat共享基于Redis的session机制。

3.2.1 将以下3个jar包分别复制到Tomcat的lib目录下:

commons-pool-1.3.jar    jedis-2.0.0.jar   tomcat-redis-session-manager-1.2-tomcat-7-java-7.jar

   3.22 修改tomcat的conf目录下的context.xml文件,在<Context>节点中添加如下内容:

       <Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" /> 

       <Manager className="com.radiadesign.catalina.session.RedisSessionManager"
                host="localhost" 
                port="6379" 
                database="0" 
                maxInactiveInterval="60"  />

3.3 重启tomcat,在浏览器输入localhost:1210,发现Tomcat1和Tomcat2的session已经共享了。

 

CentOS6.5下Tomcat7 Nginx Redis配置步骤的更多相关文章

  1. CentOS6.9下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数

    密钥登录步骤(免密码登录)ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,出于安全方面的考虑,介绍密钥认证方式登录到linux/unix的方 ...

  2. Linux(CentOS6.5)下修改Nginx初始化配置

    本文地址http://comexchan.cnblogs.com/,作者Comex Chan,尊重知识产权,转载请注明出处,谢谢! 首先备份相关文件: cp /comexHome/nginx/conf ...

  3. CentOS-6.6下Tomcat-7.0安装与配置(Linux)

    CentOS-6.6下Tomcat-7.0安装与配置(Linux) 一.认识tomcat Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目, ...

  4. Linux下的Nginx的配置+Tomcat启动

    Linux下的Nginx的配置 首次如果你只仅主机模式,那么请你切换到桥接模式或者net模式. 1.安装编译工具及库文件 yum -y install make zlib zlib-devel gcc ...

  5. CentOS 下 安装 nginx 执行配置命令 ./configure 报错

    CentOS 下 安装 nginx 执行配置命令 ./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx 时提示以下错误: checkin ...

  6. CentOS6.4下基于Nginx搭建mp4/flv流媒体服务器

    我的步骤如下:1. 安装依赖包: yum install glibc.i686#yum –y update#yum -y install gcc glibc glibc-devel make nasm ...

  7. Linux下安装Nginx并配置一个图片服务器

    首先安装nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没 ...

  8. CentOS6.5 下在Nginx中添加SSL证书以支持HTTPS协议访问

    参考文献: 1. NginxV1.8.0安装与配置 2. CentOS下在Nginx中添加SSL证书以支持HTTPS协议访问 3. nginx配置ssl证书的方法 4.nginx强制使用https访问 ...

  9. linux下安装nginx与配置

    linux系统为Centos 64位 第一步:从http://nginx.org/download/上下载相应的版本(或者wget http://nginx.org/download/nginx-1. ...

随机推荐

  1. MySQL备份学习

    备份分类 物理和逻辑备份 物理备份直接拷贝数据库目录和文件,适合数据量大.重要且需要在出现问题时快速恢复的数据库 逻辑备份保存信息包括逻辑数据库结构(数据库表的创建脚本)和内容(插入语句或者分隔符平面 ...

  2. img外头包着a时底部出现的一小段高度的解决方法。图片水平垂直居中用css解决的方法。

    <a><img/></a> 这种结构有时候在界面预览的时候会出现一段多出来的高度.这个高度,一开始我很奇怪是什么原因产生的.鼠标移动到a标签上会有高度出现,一开始我 ...

  3. 使用nssm在windows服务器上部署nodejs

    Linux上,可以轻松的使用forever或者pm2来部署nodejs应用.但是在windows下就麻烦了,pm2明确的说支持Linux & MacOS,forever在windows下貌似问 ...

  4. codeforces731C Socks

    C. Socks time limit per test 2 seconds memory limit per test 256 megabytes input standard input outp ...

  5. scala 闭包的概念

    闭包本质上是一个函数和其引用的变量的统一定义,它的返回值依赖于这个函数外部的一个或者多个变量. var test = (i:Int) => i+sum 这里 i是一个形参, 随着函数的调用传入不 ...

  6. Spring MVC常见的三种URL请求参数的处理

    //方法1:@RequestParam //url:/test1?id=123 @RequestMapping(value = "/test1",method = RequestM ...

  7. blob storage第一次亲密接触

    由于azure上各个云服务都是分开的,所以当一个地方生成文件后,我在别的地方想要读取他就变得困难,不过azure上面有解决方案,就是azure blob storage. 在现有的订阅账号下,新建一个 ...

  8. Python全栈之路-----基础篇

    Python诞生 Python是著名的”龟叔“Guido van Rossum(吉多·范罗苏姆)在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python语法很多来自C,但又受到 ...

  9. 谈谈Linux下动态库查找路径的问题

    学习到了一个阶段之后,就需要不断的总结.沉淀.清零,然后才能继续"上路".回想起自己当年刚接触Linux时,不管是用源码包编译程序,还是程序运行时出现的和动态库的各种恩恩怨怨,心里 ...

  10. 和为S的两个数字

    /*  * 和为S的两个数字  * 题目描述  * 输入一个递增排序的数组和一个数字S,在数组中查找两个数  * 使得他们的和正好是S,如果有多对数字的和等于S,输出两个  * 数的乘积最小的.  * ...