java web session共享
一 搭建环境
操作系统:windows 7 64位
http server:nginx 1.9.7
缓存系统:memcached
Servlet容器:apache-tomcat-7.0.65
二 搭建步骤
1.为了方便测试,将tomcat复制为两份,避免tomcat端口号冲突,修改tomcat\conf\server.xml 端口号。
2.在两个tomcat\webapps下建立文件夹,并新建一个jsp文件,文件内容为<%=session.getId()%> 为了区别跳转的路径可以在内容中追加编号,例如tomcat1、tomcat2。
3.启动两个tomcat并访问 http://localhost:port/<新建的文件夹>/<jsp文件>。此时两个tomcat是独立运行的。我们需要配置nginx将两个tomcat集成起来。
4.修改ngxig\conf\nginx.conf配置文件
upstream test{
server ip:port;
server ip:port;
}
server {
listen 80;
server_name ip;
#charset koi8-r;
#access_log logs/host.access.log main;
location /test{
root jsp;
index login.jsp;
proxy_pass http://test; (test为upstream配置的别名)
}
5.通过cmd命令行工具进入nginx使用命令 nginx启动。
Ps:ngxin常用命令:启动 nginx,停止 ngxin -s stop,重启nginx -s reload,如果发现命令无效,可以打开任务管理器将nginx进程结束掉再执行启动命令。
6.按照上面给出的例子通过浏览器访问 http://localhot/<文件夹>/<jsp文件>就能访问jsp页面。按F5刷新可以看到请求页面是在两个jsp页面切换,sessionId不断的更换。
7.停止tomcat,将下载好的memcached相关的jar包放到tomcat\lib下
Ps:这里要注意tomcat和jar包的版本,可以去google code上去查看,针对tomcat 7 的jar包已上传至 \\192.168.0.212\SoftBank\jar\memcached 中。
8.解压memcached,使用cmd命令进入该目录,执行 memcached -d install命令,安装好后,使用memcached -d start启动memcached服务。
9.修改tomcat\conf\context.xm文件,将以下内容天下到<context></context>标签内。
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:ip:port" requestUriIgnorePattern=".*/.(png|gif|jpg|css|js)$"
sessionBackupAsync="false"
sessionBackupTimeout="100"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory" copyCollectionsForSerialization="false"/>
添加好后,修改IP和端口。
10.启动tomcat,访问nginx配置的路径,http://localhot/<文件夹>/<jsp文件> 此时再按F5刷新页面会看到无论访问哪个页面sessionID都是一致的。
java web session共享的更多相关文章
- java web Session会话技术(原理图解+功能+与Cookie的区别+基本使用)
java web Session会话技术(原理图解+功能+与Cookie的区别+基本使用) 这是我关于会话技术的第二篇文章,对 Cookie有不了解的兄弟可以点击下方的Cookie跳转 Cookie链 ...
- Java Web Session设置
一.前言 在做 java web项目时,我们很多时候都要用到 Session,那么我就简单的写一下 Session 的写法. 二.代码实现 Servlet Session 的设置 package co ...
- java web session过期 跳转页面没有跳出frame的问题
对于frame页面框架的java web项目,如果session过期执行跳转操作时,只在一个frame中(例如center frame)跳转到设置的login页面了,为了能直接跳转到最初的登录页面,就 ...
- java web session监听销毁跳转
1.了解如何使用HttpSessionListener监听session的销毁. 2.了解如何使用HttpSessionBindingListener监听session的销毁. 一. 使用HttpSe ...
- 聊聊从web session的共享到可扩展缓存设计
先从web session的共享说起 许多系统需要提供7*24小时服务,这类系统肯定需要考虑灾备问题,单台服务器如果宕机可能无法立马恢复使用,这必定影响到服务.这个问题对于系统规模来说,从小到大可 ...
- 多台web如何共享session进行存储(转载)
session的存储了解以前是怎么做的,搞清楚了来龙去脉,才会明白进行共享背后的思想和出发点.我喜欢按照这样的方式来问(或者去搞清楚):为什么要session要进行共享,不共享会什么问题呢? php中 ...
- 基于nginx tomcat redis分布式web应用的session共享配置
一.前言 nginx 作为目前最流行的开源反向代理HTTP Server,用于实现资源缓存.web server负载均衡等功能,由于其轻量级.高性能.高可靠等特点在互联网项目中有着非常普遍的应用,相关 ...
- nginx redis tomcat 分布式web应用 session共享
目标:多台tomcat 使用redis实现共享session.redis的安装请参阅:centos上安装redis nginx 作为目前最流行的开源反向代理HTTP Server,用于实现资源缓存.w ...
- java项目使用memcache实现session共享+session基础
本文章主要目的是配置session共享,为了巩固基础,捎带介绍了一些基础知识(网上搜索后觉得最全面的特引过来,节省时间),基础扎实的可以自动忽略. 基础篇: 1.了解java web中的session ...
随机推荐
- 64.Find the Duplicate Number(发现重复数字)
Level: Medium 题目描述: Given an array nums containing n + 1 integers where each integer is between 1 ...
- mapreduce实验
代码: public class WordCount { public static void main(String[] args) throws IOException, ClassNotFoun ...
- 利用powerDesigner15.1连接oracle数据库并自动生成表结构
利用powerDesigner15.1连接oracle数据库并自动生成表结构 参考:http://blog.csdn.net/qq_24531461/article/details/76713802 ...
- Windows7有“系统保留”分区时,安装系统要注意的两点
1.手动格式化“系统保留”分区 2.格式化完成之后,安装系统到第二个分区,不能安装到“系统保留”分区 具体看图: 本文章转载于辰羿的博客,如有侵权请联系本论坛维护者删除.
- ruby之基础语法
ruby语法之哈希 =>相当于python的字典 ruby语法之数组 =>相当于python的列表 举例: gitaly= Hash.new #建立新Hash类型 gitaly['firs ...
- 【leetcode】901. Online Stock Span
题目如下: 解题思路:和[leetcode]84. Largest Rectangle in Histogram的核心是一样的,都是要找出当前元素之前第一个大于自己的元素. 代码如下: class S ...
- 【Flutter学习】可滚动组件之滚动监听及控制
一,概述 ScrollController可以用来控制可滚动widget的滚动位置 二,ScrollController 构造函数 ScrollController({ double initialS ...
- 第七周-scrum meeting
第一部分ScrumMeeting 每个人的工作:其他人:(请填写自己的任务) 成员 任务 ISSUE链接 本周已完成的工作 本周计划完成的工作 工作中遇到的困难 关玉娇 负责登录注册界面的设计与实现 ...
- $router和router区别
this.$router.push({path:'/'})//这个是js编程式的一种动态跳转路由方式,是全局的路由对象. 而写在router声明文件中的router是自己定义实例化的一个对象.可以使用 ...
- Spring学习笔记第一篇——初识Spring
1.简单介绍 spring的ioc底层是先配置xml文件,接着创建工厂,利用dom4j解析配置文件,最后通过反射完成.大概步骤差不多这样,这些具体代码spring帮你完成了.现在我们只需要配置xml和 ...