Nginx+tomcat+redis实现session共享
1,安装nginx,使用yum -y install nginx 这是epel源中的,需要安装epel源。
2,配置nginx。
 在nginx配置文件添加upstremserver和proxy,如下:
 upstream glq.com {
 #ip_hash;
 server 192.168.125.200:8080 weight=1;
 server 192.168.125.201:8080 weight=2;
 }
server {
    listen       80;
    #listen       [::]:80 default_server;
    server_name  _;
    #root         /usr/share/nginx/html;
    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;
    location / {
 proxy_pass http://glq.com;  
 proxy_redirect default;
    }
    error_page 404 /404.html;
        location = /40x.html {
    }
    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}
3,配置tomcat,两台server分别为:192.168.125.200,192.168.125.201,每台主机要做如下配置:
下载tomcat,并配置相关变量。
https://tomcat.apache.org/download-80.cgi  下载
tar -xf apache-tomcat-xxx.tar.gz -C /usr/local/
ln -sv apache-tomcat-xx tomcat
vim /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
4,下载tomcat-redis-session-manager相关组件。
https://raw.githubusercontent.com/cc-chen/tomcat8.5-redis-session-manager/master/lib/jedis-2.5.2.jar
https://raw.githubusercontent.com/cc-chen/tomcat8.5-redis-session-manager/master/output/tomcat8.5-redis-session-manager.jar
https://raw.githubusercontent.com/cc-chen/tomcat8.5-redis-session-manager/master/lib/commons-pool2-2.2.jar
把以上3个jar包mv到tomcat下lib目录下,然后配置context.xml,添加如下:
<Valve className="com.s.tomcat.redissessions.RedisSessionHandlerValve"/>
<Manager className="com.s.tomcat.redissessions.RedisSessionManager"
    host="192.168.125.211"
    port="6379"
    database="0"
    password="123123"   //此处密码需要在redis打开密码选项。
    maxInactiveInterval="60" />
在webapps下新建testapp,并创建index.jsp:
 mkdir -pv testapp/{lib,classes,WEB-INF,META-INF}
创建index.jsp:
<%@ page language="java" %>
<html>
  <head><title>TomcatA</title></head>
  <body>
    <h1><font color="red">TomcatA.izyno.com</font></h1>
    <table align="centre" border="1">
      <tr>
        <td>Session ID</td>
    <% session.setAttribute("izyno.com","izyno.com"); %>
        <td><%= session.getId() %></td>
      </tr>
      <tr>
        <td>Created on</td>
        <td><%= session.getCreationTime() %></td>
     </tr>
    </table>
  </body>
</html>
作为测试页,修改里面TomcatA为B,两台tomcat一样配置。
5,配置redis。
yum -y install gcc c++
下载最新的redis解压:tar -xf redis-4.0.8.tar.gz
cd redis-4.0.8
make
make PREFIX=/usr/local/redis install
cp redis.conf /usr/local/redis/
需要修改的配置:
requirepass 123123  //密码
daemonize yes   //开启守护进程
bind 0.0.0.0   //设置监听所有IP
然后启动redis:
bin/redis-server /usr/local/redis/redis.conf
查看redis端口:
[root@manager ~]# ss -tunlp
Netid  State      Recv-Q Send-Q                                                                                                     Local Address:Port                                                                                                           Peer Address:Port
tcp    LISTEN     0      128                                                                                                                   *:6379
6,测试。     

Nginx+tomcat+redis实现session共享的更多相关文章

  1. nginx+tomcat+redis完成session共享(转载)

    转载:http://blog.csdn.net/grhlove123/article/details/48047735 tomcat7下基于redis的session共享所需jar包: http:// ...

  2. nginx+tomcat+redis完成session共享

    本文记录nginx+redis+tomcat实现session共享的过程 nginx安装:http://blog.csdn.net/grhlove123/article/details/4783467 ...

  3. nginx+tpmcat+redis实现session共享

    nginx+tpmcat+redis实现session共享 版本:nginx nginx-1.8.0.tar.gztomcat apache-tomcat-7.0.78.tar.gzredis  re ...

  4. Nginx+Tomcat集群+session共享

    Nginx+Tomcat集群+session共享 1)安装Nginx 2)配置多个Tomcat,在server.xml中修改端口(端口不出现冲突即可) 3)在nginx.conf文件中配置负载均衡池, ...

  5. Nginx+Tomcat+Memcache 实现session共享

    Nginx + Tomcat + Memcache 实现session共享 1. Nginx 部署 1.上传源码包到服务器,解压安装 下载地址:http://nginx.org/en/download ...

  6. 分布式Session共享(一):tomcat+redis实现session共享

    一.前言 本文主要测试redis实现session共享的实现方式,不讨论如何让nginx参与实现负载均衡等. 二.环境配置 本测试在Window下进行 name version port Tomcat ...

  7. 160513、nginx+tomcat集群+session共享(linux)

    第一步:linux中多个tomcat安装和jdk安装(略) 第二步:nginx安装,linux中安装nginx和windows上有点不同也容易出错,需要编译,这里做介绍 一.安装依赖 gcc open ...

  8. Nginx+IIS+Redis 处理Session共享问题 1

    最近遇到一个棘手的问题,微信公众平台的前端站点session老是丢失,我们是走的微信网页授权,授权后获取用户openid,丢失后没有openid后续的操作全白搭了,因为没了openid只能判断为客户不 ...

  9. Nginx+Tomcat+Memcached实现session共享

    实验环境: server1:nginx tomcat memcached server2:tomcat memcached Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入 ...

随机推荐

  1. C++ primer 第四版 练习3.13,3.14

    读一组整数到 vector 对象,计算并输出每对相邻元素的 和.如果读入元素个数为奇数,则提示用户后一个元素 没有求和,并输出其值. vector<int> ivec; int ival; ...

  2. DevExpress v17.2最新版帮助文档下载大全

    DevExpress v17.2.4帮助文档下载列表大全来啦!包含.NET.VCL.HTML/JS系列所有帮助文档,提供CHM和PDF两个版本.除已停止更新的Silverlight.Windows 8 ...

  3. 搭建 spring 项目

    参考原文:http://blog.csdn.net/binyao02123202/article/details/20387595 1.新建maven web 工程 2.编辑pom.xml添加依赖 & ...

  4. jQuery trigger()以及注意事项

    trigger() 方法触发被选元素的指定事件类型.例如: $('#pcId').trigger("change") ;//触发id为“pcId”的select的 change事件 ...

  5. UITableView去掉分隔符

    或用代码实现 [TableView setSeparatorColor:[UIColor clearColor]]; 问题一用你给的方法貌似不行,我用这个方法把分隔线给“去掉”了:    [editV ...

  6. union-find算法

     1.背景 <算法>一书中提到了关于算法的一些基本思想 优秀的算法因为能够解决实际的问题而变得更为重要: 高效算法的代码可以很简单: 理解某个实现的性能特点是一项有趣而令人满足的挑战: 在 ...

  7. Linux:centos内核升级

    centos内核升级 centos升级2.6内核到3.10 在yum的ELRepo源中,有 m ain l ine(3.13.1). l ong- t erm(3.10.28)这2个内核版本,long ...

  8. Python GIL 系列之再谈Python的GIL

    1. 之前写过一篇<通过实例认识Python的GIL>的文章,感觉有些意犹未尽 2. 这次对例子作了些扩展,进一步的分析GIL对Python程序的影响 2.1 先来看例子: [python ...

  9. UI基础:UIScrollView、UIPageControl

    UIScrollView UIScrollView 是可以滚动的视图,UIView本身不能滚动,子类UIScrollView扩展了滚动方面的功能. UIScrollView 是所有滚动视图的基类.以后 ...

  10. elasticsearch问题解决之分片副本UNASSIGNED

    在上一篇文章中,我记录了在windows下同一台机器上搭建es集群的步骤,第二天在向集群中创建索引的时候,出现了分片副本未分配的情况(UNASSIGNED). 虽然并不影响数据的插入和查询,但是有问题 ...