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. 快速切题 sgu113 Nearly prime numbers 难度:0

    113. Nearly prime numbers time limit per test: 0.25 sec. memory limit per test: 4096 KB Nearly prime ...

  2. re 正则

      如果直接给出字符,就是精确匹配.对于特殊字符- ,在正则表达式中要用转义字符\转义.   \d        一个数字, \w       任意单个字符,空白符除外(例 字母.数字或下划线 . 英 ...

  3. eclipse中使用Maven新建Servlet2.5的Web项目

    前言 我们用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp,由于这个catalog比较老,用的servlet还是2.3的 ...

  4. php file文件操作函数

    filemtime() 函数: filemtime() 函数返回文件内容上次的修改时间. 若成功,则时间以 Unix 时间戳的方式返回.若失败,则返回 false. <?php echo fil ...

  5. android短彩信附件机制

    将一些认识写下来,和大家交流一下,同时也方便自己复习. 用户可以通过附件按钮,添加附件.以添加幻灯片为例: 如果点击幻灯片,会走如下代码: ComposeMessageActivity.java pr ...

  6. Redis在.net中的应用学习

    在Redis的官网(http://redis.io/clients#c)上可以看到支持Redis C#的客户端. redis的网络连接方式和传统的rdbms相似,一种是长连接,一种是连接池,此处使用长 ...

  7. NBUT 1221 Intermediary 2010辽宁省赛

    Time limit 1000 ms Memory limit 131072 kB It is widely known that any two strangers can get to know ...

  8. jboss 5.1 启动问题解决

    在安装好后启动时可能遇到这样的情况: ERROR [AbstractKernelController] Error installing to Instantiated: name=Attachmen ...

  9. JavaScript 之call , apply 和prototype 介绍

    1. 前言 为什么将这三个概念放在一起说.原因是这些是会在实现js 继承会需要使用到的 2. call 和 apply call 和 apply 的作用基本类似, 都是去执行function并将这个f ...

  10. ES6必知必会 (四)—— Symbol、Set和Map

    Symbol 1.Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值.它是 JavaScript 语言的第七种数据类型,前六种分别是:undefined.null.布尔值(Bool ...