环境:centos7, Tomcat7, redis-3.2,Nginx1.8,jdk-8u60-linux-x64

Nginx反向代理tomcat,redis作会话共享

一、Nginx安装

  解决依赖(后续安装时有提示什么依赖类的错误,安装即可):

  1、yum install gcc gcc-c++ autoconf automake -y

  2、yum install zlib zlib-devel openssl openssl-devel -y

  3、yum install pcre pcre-devel -y

  安装Nginx:

  1、tar xvf nginx-1.8.0.tar.gz -C /usr/local/src/ && cd /usr/local/src/nginx-1.8.0

  2、./configure --prefix=/usr/local/nginx --with-http_dav_module .......

  3、make && make install

二、redis安装

  1、tar -xvf redis-3.2.8.tar.gz

  2、cd redis-3.2.8

  3、make

  4、那些像redis-server   redis-cli等命令,可能在redis-3.2.8下的src中;

  5、vim redis.conf     修改此处为   daemonize yes

  5、cd src

  6、./redis-server 配置文件所在路径     #指定配置文件启动

  7、redis-cli  #测试客户端连接

三、Tomcat安装,此处为多实例

  JDK安装:

  1、rpm -ivh jdk-8u60-linux-x64.rpm      #找个包

  2、会安装到/usr/java下:

    vim /etc/profile.d/java.sh 写入:
    export JAVA_HOME=/usr/java/jdk1.8.0_60
    export PATH=$PATH:$JAVA_HOME/bin
    java -version    #测试

  Tomcat安装:

  1、tar -xvf apache-tomcat-7.0.82.tar.gz -C /usr/local

  2、cd  /usr/local

  3、mv apache-tomcat-7.0.82 ./tomcat

  4、在解压、移动一个 tomcat1

  5、在/etc/profile文件中加入下面内容配置环境变量:    

    ##########first tomcat###########
    CATALINA_BASE=/usr/local/tomcat
    CATALINA_HOME=/usr/local/tomcat
    TOMCAT_HOME=/usr/local/tomcat
    export CATALINA_BASE CATALINA_HOME TOMCAT_HOME
    ##########first tomcat############

    ##########second tomcat##########
    CATALINA_2_BASE=/usr/local/tomcat1
    CATALINA_2_HOME=/usr/local/tomcat1
    TOMCAT_2_HOME=/usr/local/tomcat1
    export CATALINA_2_BASE CATALINA_2_HOME TOMCAT_2_HOME
    ##########second tomcat##########

  6、进入tomcat1的bin目录, 修改startup.sh和shutdown.sh 两个文件,都添加如下内容:   

    export JAVA_HOME=/usr/local/java/jdk1.8.0_60
    export PATH=$PATH:$JAVA_HOME/bin
    export CLASSPATH=$JAVA_HOME/lib
    export CATALINA_HOME=$CATALINA_2_HOME
    export CATALINA_BASE=$CATALINA_2_BASE

  7、修改tomcat1端口,第一个不变,修改server.xml

    修改后示例如下:
   
      <Server port="9005" shutdown="SHUTDOWN">  端口:8005->9005
          <!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
          <Connector port="8181" maxHttpHeaderSize="8192"        端口:8080->8181
          maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />
          <!-- Define an AJP 1.3 Connector on port 8009 -->
          <Connector port="9009"                                  端口:8009->9009
               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

   8、启动两个Tomcat

三、配置

  1、在/usr/local/tomcat(1)/webapps/ROOT中编辑index.jsp文件,内容如下:

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  7. <title>获取session id</title>
  8. </head>
  9. <body>
  10. Session Id : <%= request.getSession().getId() %>
  11. </body>
  12. </html>

  2、添加依赖的jar包到两个Tomcat的lib目录中:

  commons-logging-1.2.jar       jedis-2.8.2.jar       tomcat-redis-session-manage-tomcat7.jar
  commons-pool2-2.4.2.jar       tomcat-juli.jar

  3、编辑两个Tomcat的conf/context.xml,加入以下内容:

  <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
  <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
  host="172.16.0.79"  #redis地址
  port="6379"
  database="0"
  maxInactiveInterval="60" />

  4、启动各个服务

Tomcat-redis-Nginx的更多相关文章

  1. Tomcat+redis+nginx配置

    为客户开发的一个绩效系统,采用了java web的开发方式,使用了一些spring mvc, mybatis之类的框架.相比于oracle ebs的二次开发,这种开发更加灵活,虽然和ebs集成的时候遇 ...

  2. 转 Tomcat+redis+nginx配置

    为客户开发的一个绩效系统,采用了java web的开发方式,使用了一些spring mvc, mybatis之类的框架.相比于oracle ebs的二次开发,这种开发更加灵活,虽然和ebs集成的时候遇 ...

  3. Tomcat+Redis+Nginx实现session共享(Windows版)

    redis安装:xx nginx安装:xx 步骤: 1.下载tomcat-redis-session-manager相应的jar包,主要有三个: wget https://github.com/dow ...

  4. 【转】 Tomcat+redis+nginx配置

    为客户开发的一个绩效系统,采用了java web的开发方式,使用了一些spring mvc, mybatis之类的框架.相比于oracle ebs的二次开发,这种开发更加灵活,虽然和ebs集成的时候遇 ...

  5. Nginx+Tomcat+Redis实现负载均衡、资源分离、session共享

    Nginx+Tomcat+Redis实现负载均衡.资源分离.session共享 CentOS安装Nginx http://centoscn.com/CentosServer/www/2013/0910 ...

  6. 通过Nginx+tomcat+redis实现反向代理 、负载均衡及session同步

    一直对于负载均衡比较陌生,今天尝试着去了解了一下,并做了一个小的实验,对于这个概念有一些认识,在此做一个简单的总结 什么是负载均衡 负载均衡,英文 名称为Load Balance,指由多台服务器以对称 ...

  7. 基于nginx tomcat redis分布式web应用的session共享配置

    一.前言 nginx 作为目前最流行的开源反向代理HTTP Server,用于实现资源缓存.web server负载均衡等功能,由于其轻量级.高性能.高可靠等特点在互联网项目中有着非常普遍的应用,相关 ...

  8. nginx+tomcat+redis的集群+session共享

    nginx+tomcat+redis的集群+session共享 环境准备 1.tomcat版本:tomcat7 tomcat下载及安装,目前很多好的资源和步骤,此处省略. 2.jdk版本:jdk1.7 ...

  9. nginx+tomcat+redis负载均衡及session共享

    概述 本文档是用来详细描述 nginx+tomcat+redis负载均衡实现session共享 所需软件及下载地址 软件名称 下载地址 功能说明 Nginx-v1.6.0 http://nginx.o ...

  10. nginx之 nginx + tomcat + redis 负载均衡且session一致性

    说明: 本文描述的是 nginx + tomcat + redis 实现应用负载均衡且满足session一致性,从安装到配置的全部过程,供大家学习!nginx 代理服务器ip: 10.219.24.2 ...

随机推荐

  1. UE-9260使用说明2

    生成镜像 1. U-boot 生成u-boot.bin文件 (1) Makefile ifeq ($(ARCH),arm) CROSS_COMPILE = endif 改动为 ifeq ($(ARCH ...

  2. Python Journey

    1. 开发环境搭建 - Eclipse + PyDev搭建开发环境: http://www.cnblogs.com/Bonker/p/3584707.html (其实,如果不是License限制,推荐 ...

  3. LeetCode:二叉树的非递归中序遍历

    第一次动手写二叉树的,有点小激动,64行的if花了点时间,上传leetcode一次点亮~~~ /* inorder traversal binary tree */ #include <stdi ...

  4. MySQL Infobright 数据仓库快速安装笔记[转]

    [文章作者:张宴 本文版本:v1.1 最后修改:2010.05.18 转载请注明原文链接:http://blog.zyan.cc/infobright/] Infobright是一个与MySQL集成的 ...

  5. MVC3 类型 System.Web.Mvc.ModelClientValidationRule 同时存在

    用文本编辑器打开  工程名称 .csproj 找到 1. <Reference Include="System.Web.WebPages" /> 2. <Refe ...

  6. This means that only a small number of nodes must be read from disk to retrieve an item.

    http://cis.stvincent.edu/html/tutorials/swd/btree/btree.html Introduction A B-tree is a specialized ...

  7. types of transfrmations

    http://math.wallawalla.edu/~duncjo/courses/math113/winter08/notes/9-1_math113.pdf Name What Changes ...

  8. SAP建数据库索引

    [转]SAP建数据库索引   %_hints  db6 'INDEX("MKPF","MKPF~BUD")'           db6 'INDEX(&quo ...

  9. 原来 Set 集合也可以排序

    Java 集合类主要由两个接口派生而出: Collection 和 Map.在 Collection 集合中,我们经常用到的是 List 集合和 Map 集合,而 Set 集合出场的机会就相对比较的少 ...

  10. Javascript高级程序设计笔记(很重要尤其是对象的设计模式与继承)

    var obj = {'a':'a'}; var fun = function (){} console.log(typeof obj);//object console.log(typeof fun ...