nginx+tomcat集群+redis(memcache)session共享!
常用保持session的方式:
1、一些代理(比如nginxIP_hash)
1、使用数据库来存储Session
2、使用Cookie来存储Session
3、使用Redis来存储Sesssion(memcache也可以)
……
环境:
192.168.1.220 nginx centos6.6 端口:80 版本:1.9.2 192.168.1.224 tomcatA centos6.6 端口:8080 192.168.1.225 tomcatB centos6.6 端口:8090 版本:Jdk:1.7.0_75 Tomcat:7.0.54 192.168.1.223 redis 3.0.5 端口:6379 |
配置session保持并测试:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
nginx.conf配置: upstream www.tomcatcluster.com { zone myapp1 64k; server 192.168.1.224:8080 weight=1 max_fails=2fail_timeout=30s; server 192.168.1.218:8090 weight=1 max_fails=2fail_timeout=30s; } server { listen 80 default; server_name www.tomcat.com; location / { proxy_pass http: //www .tomcatcluster.com; } } |
TomcatA:TomcatB
会话保持:
编辑tomcat配置文件context.xml(TomcatA和TomcatB均操作)
1
2
3
4
5
6
7
8
9
10
11
|
<Context> <Valve className= "com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" /> <ManagerclassName= "com.orangefunction.tomcat.redissessions.RedisSessionManager" host= "192.168.1.223" <!-- Redis地址 --> port= "6379" <!-- Redis端口 --> paassword= "tomcat" <!-- Redis密码 --> database= "0" <!-- 存储Session的Redis库编号 --> maxInactiveInterval= "60" <!-- Session失效的间隔(秒) --> /> < /Context > mv commons-pool2-2.2.jar jedis-2.7.2.jar tomcat-redis-session-manage-tomcat7.jar /usr/local/tomcat-7 .0.54 /lib/ |
如何测试session会话保持?
可以看到虽然Server从TomcatA变为TomcatB,但session的创建时间没有变化,这就完成了session共享。
nginx+tomcat集群+redis(memcache)session共享!的更多相关文章
- Nginx+tomcat集群中,session的共享
nginx,tomcat集群后多个session分配到同一个应用 单节点低负荷的情况下,我们通常把一个WEB应用打成WAR包放WEB应用服务器,如TOMCAT下运行就行了(如图1).但随着用户量的增加 ...
- 用redis实现TOMCAT集群下的session共享
上篇实现了 LINUX中NGINX反向代理下的TOMCAT集群(http://www.cnblogs.com/yuanjava/p/6850764.html) 这次我们在上篇的基础上实现session ...
- nginx整合tomcat集群并做session共享----测试案例
最近出于好奇心,研究了一下tomcat集群配置,并整合nginx,实现负载均衡,session共享,写篇记录,防止遗忘.---------菜鸡的自我修炼. 说明:博主采用一个web项目同时部署到两台t ...
- Tomcat集群环境下session共享方案 通过memcached 方法实现
对于web应用集群的技术实现而言,最大的难点就是:如何能在集群中的多个节点之间保持数据的一致性,会话(Session)信息是这些数据中最重要的一块.要实现这一点, 大体上有两种方式:一种是把所有Ses ...
- Nginx+tomcat集群redis共享session应用方案
部署环境 主机 软件版本 192.168.88.1 nginx-1.12.2+redis-3.2.11 192.168.88.2 apache-tomcat-7.0.79 + jdk1.8 192.1 ...
- Tomcat 集群中 实现session 共享的三种方法
前两种均需要使用 memcached 或 redis 存储 session ,最后一种使用 terracotta 服务器共享. 建议使用 redis ,不仅仅因为它可以将缓存的内容持久化,还因为它支持 ...
- 【nginx+tomcat集群】Nginx1.12.2+Tomcat7集群+负载均衡+Session共享
今天想着将项目优化一下,就想的实现集群分布,在本机测试:利用nginx+tomcat实现 通过上一篇博客(http://www.cnblogs.com/qlqwjy/p/8535235.html),N ...
- 160513、nginx+tomcat集群+session共享(linux)
第一步:linux中多个tomcat安装和jdk安装(略) 第二步:nginx安装,linux中安装nginx和windows上有点不同也容易出错,需要编译,这里做介绍 一.安装依赖 gcc open ...
- Nginx+Tomcat+Memcached 实现集群部署时Session共享
Nginx+Tomcat+Memcached 实现集群部署时Session共享 一.简介 我们系统经常要保存用户登录信息,有Cookie和Session机制,Cookie客户端保存用户信息,Sessi ...
随机推荐
- php四种文件加载语句
https://mp.weixin.qq.com/s/Wsn4grDRxVIgMfu__E_oWQ 1.include 2.require 3.include_once 4.require_once ...
- Jeecms6中后台控制层Action如何将值传入前台视图层模板中的?
转载:https://blog.csdn.net/wsm201005030226/article/details/44343069 Jeecms后台控制层如何传值到前台freemarker的? ...
- Life of Pi
·when you look into his eyes,you are seeing your own emotionsreflected back at you,nothing else. ·Go ...
- 观察者模式(Observer、Subject、ConcreteSubject、ConcreteObserver)(监护、订阅)
建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应的作出反应. 在此发生改变的对象称之为观察目标(被观察者),而被通知的对象称为观察者,一个观察者目标可以对应多个观 ...
- K8s 学习者绝对不能错过的最全知识图谱(内含 56个知识点链接)
导读:Kubernetes 作为云原生时代的“操作系统”,熟悉和使用它是每名用户的必备技能.本篇文章概述了容器服务 Kubernetes 的知识图谱,部分内容参考了网上的知识图谱,旨在帮助用户更好的了 ...
- TZ_06_SpringMVC_传统文件上传和SpringMVC文件上传方式
1.传统文件上传方式 <!-- 文件上传需要的jar --> <dependency> <groupId>commons-fileupload</groupI ...
- Django 创建web项目之HelloWorld
Django.Flask.Tornado并称为python WEB三大框架.Diango是一个开源的web应用框架,具有开发速度快的特点.同时因为过度封装,具有性能低的特点. 创建Django项目,启 ...
- js 百度地图和谷歌地图的选择
最近手上接到一个需求: 国外的域名访问,显示谷歌地图 国内的域名访问,显示百度地图 切换中英文的时候,中文->显示百度地图,英文->能显示谷歌地图就显示谷歌地图,不能显示(报错)就显示百度 ...
- Java图片高保真缩放工具类
Java图片高保真缩放 package com.xindai.auth.service.util; import java.awt.image.BufferedImage; import java.i ...
- Linux下允许MySQL 授权远程连接
1.mysql -u root -p (root)用户名 2.mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'r ...