环境: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文件,内容如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>获取session id</title>
</head>
<body>
Session Id : <%= request.getSession().getId() %>
</body>
</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. LeetCode -- 反转英文单词

    问题:给定英文句子.反转里面的每一个单词.比如"the sky is blue" 反转后为 "blue is the sky" 实现思路:对英文句子每一个字符做 ...

  2. cocos2dx3.0 对象池

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdzE4NzY3MTA0MTgz/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...

  3. Java IO 类

    IO包中绝大部分的类都是由以下四个类直接或间接继承来的InputStream OutputStream Reader 还有Writer 其中InputStream和OutputStream代表输入流和 ...

  4. 笔记13 winform

    一:panel 和 tablelayoutpanel,FlowLayoutPanel FlowLayoutPanel和TableLayoutPanel是.NET Framework的新增控件.顾名思义 ...

  5. Apcahe Shiro学习笔记(一):简介及运行官方Demo

    一.Apache Shrio: apache shiro 是一个功能强大和易于使用的Java安全框架,为开发人员提供一个直观而全面的的解决方案的认证,授权,加密,会话管理. 支持认证跨一个或多个数据源 ...

  6. NYOJ 905 卡片游戏

    卡片游戏 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描写叙述 小明近期宅在家里无聊.于是他发明了一种有趣的游戏.游戏道具是N张叠在一起的卡片,每张卡片上都有一个数字,数字 ...

  7. thttpd源代码解析 定时器模块

    thttpd源代码解析 定时器模块 thttpd是很轻量级的httpserver,可运行文件仅50kB.名称中的第一个t表示tiny, turbo, 或throttling 与lighttpd.mem ...

  8. MonoTouch.Dialog简介

    新建一个Single View Application项目 添加程序集 MonoTouch.Dialog.dll引用 删除 MainStoryboard.storyboard 添加空类Task.cs ...

  9. 页面滚动tab监听

    页面 需求,顶部固定,左侧固定,右侧内容滚动 所以给右侧内容高度,内容里面滚动(使用固定定位的话,右侧内容总会给head部分遮挡,比较坑) 1.左侧是侧边栏,点击li,右侧内容显示当前 右侧内容滚动, ...

  10. 记一次FastJSON和Jackson解析json时遇到的中括号问题

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jadyer/article/details/24395015 完整版见https://jadyer. ...