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. .net大型分布式电子商务架构说明

    背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便于运维及监控. 架构演变 基础框架剥 ...

  2. CentOS 7 Crontab

    Crontab默认每分钟读取 /etc/crontab 文件./etc/cron.d/目录和/var/spool/cron/目录一次,3者对应任务的建立格式是一致的,只是/var/spool/cron ...

  3. python 爬虫系列教程方法总结及推荐

    爬虫,是我学习的比较多的,也是比较了解的.打算写一个系列教程,网上搜罗一下,感觉别人写的已经很好了,我没必要重复造轮子了. 爬虫不过就是访问一个页面然后用一些匹配方式把自己需要的东西摘出来. 而访问页 ...

  4. Java学习图谱

    学习图谱 一:常见模式与工具 二:分布式架构 三:微服务架构 四:底层知识 五:性能优化 六:工程化与工具

  5. I.MX6 计算iomux Pin配置

    /********************************************************************************* * I.MX6 计算iomux P ...

  6. mac 常用开发软件列表

    toolbox app jetbrains系开发工具箱,包含了phpstorm idea等开发工具 Postman 接口调试工具,有插件版和单独的app两种.类似paw Sublime 文本编辑器,类 ...

  7. Ubuntu 18.04 搜狗输入法无法切换到英文输入

    不知道改了个什么东西,Ubuntu 中Ctrl+Space不能切换输入法了,因此不能输入英文,shell就更是没法工作,最后找到方法了: 在终端键入fcitx-config-gtk3,这时候如果直接在 ...

  8. su:鉴定故障

    deepin中从普通用户切换到管理员时出现su:鉴定故障 使用命令:su root [mylinux@localhost ~]$ su root 密码: su: 鉴定故障 解决方法: 使用命令:sud ...

  9. 洛谷 1192:台阶问题(递推,DP)

    题目描述 有 N 级的台阶,你一开始在底部,每次可以向上迈最多 K 级台阶(最少 1 级),问到达第 N 级台阶有多少种不同方式. 输入输出格式 输入格式: 两个正整数N,K. 输出格式: 一个正整数 ...

  10. React中如何优雅的捕捉事件错误

    React中如何优雅的捕捉事件错误 前话 人无完人,所以代码总会出错,出错并不可怕,关键是怎么处理. 我就想问问大家react的错误怎么捕捉呢? 这个时候: 小白:怎么处理? 小白+: ErrorBo ...