一 搭建环境

操作系统: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共享的更多相关文章

  1. java web Session会话技术(原理图解+功能+与Cookie的区别+基本使用)

    java web Session会话技术(原理图解+功能+与Cookie的区别+基本使用) 这是我关于会话技术的第二篇文章,对 Cookie有不了解的兄弟可以点击下方的Cookie跳转 Cookie链 ...

  2. Java Web Session设置

    一.前言 在做 java web项目时,我们很多时候都要用到 Session,那么我就简单的写一下 Session 的写法. 二.代码实现 Servlet Session 的设置 package co ...

  3. java web session过期 跳转页面没有跳出frame的问题

    对于frame页面框架的java web项目,如果session过期执行跳转操作时,只在一个frame中(例如center frame)跳转到设置的login页面了,为了能直接跳转到最初的登录页面,就 ...

  4. java web session监听销毁跳转

    1.了解如何使用HttpSessionListener监听session的销毁. 2.了解如何使用HttpSessionBindingListener监听session的销毁. 一. 使用HttpSe ...

  5. 聊聊从web session的共享到可扩展缓存设计

    先从web session的共享说起   许多系统需要提供7*24小时服务,这类系统肯定需要考虑灾备问题,单台服务器如果宕机可能无法立马恢复使用,这必定影响到服务.这个问题对于系统规模来说,从小到大可 ...

  6. 多台web如何共享session进行存储(转载)

    session的存储了解以前是怎么做的,搞清楚了来龙去脉,才会明白进行共享背后的思想和出发点.我喜欢按照这样的方式来问(或者去搞清楚):为什么要session要进行共享,不共享会什么问题呢? php中 ...

  7. 基于nginx tomcat redis分布式web应用的session共享配置

    一.前言 nginx 作为目前最流行的开源反向代理HTTP Server,用于实现资源缓存.web server负载均衡等功能,由于其轻量级.高性能.高可靠等特点在互联网项目中有着非常普遍的应用,相关 ...

  8. nginx redis tomcat 分布式web应用 session共享

    目标:多台tomcat 使用redis实现共享session.redis的安装请参阅:centos上安装redis nginx 作为目前最流行的开源反向代理HTTP Server,用于实现资源缓存.w ...

  9. java项目使用memcache实现session共享+session基础

    本文章主要目的是配置session共享,为了巩固基础,捎带介绍了一些基础知识(网上搜索后觉得最全面的特引过来,节省时间),基础扎实的可以自动忽略. 基础篇: 1.了解java web中的session ...

随机推荐

  1. Unity接入AbMob踩坑记

    之前是配置好的环境,不知道怎么突然就不正常了. 一直弹出下面的报错: Error running CocoaPods. Please ensure you have at least version ...

  2. static的变量是放在哪里

    static的变量都放在数据段,但是初始值若为0则放在BSS节中.而初始值非零则放在数据节中. 数据节和BSS节都属于数据段.   顺便说说对象的存储,可分为三类:静态存储(static storag ...

  3. css的9个常用选择器

    1.类选择器(通过类名进行选择) <!DOCTYPE html> <html> <head> <title></title> </he ...

  4. 【Tensorflow】slim.arg_scope()的使用

    https://blog.csdn.net/u013921430/article/details/80915696

  5. python 读 xlsx

    前言 xlsx写方法参考此连接:http://www.cnblogs.com/whf191/p/5482485.html xlrd是用来读的,使用前需安装 pip install xlrd 例子 fn ...

  6. 【服务端开发-杂】REST 和 Graphql

    基本知识链接: 1.[译]对比GraphQL与REST——两种HTTP API的差异:https://www.jianshu.com/p/2ad286397f7a 2. 怎样用通俗的语言解释REST, ...

  7. foobar2000 频谱给我的win10 任务栏添加一点会动背景

    在任务栏右键,"任务栏设置",颜色 -> 透明效果, 然后 foobar2000 的 view -> layout -> Quick Setup,选择带有Visu ...

  8. C++ 浅析调试,内存重叠查看

    这里举个例子查看内存, 环境为:vs 2017 测试为strcpy[因为测试老api,需要在 预处理中 添加 _CRT_SECURE_NO_WARNINGS ] 测试问题:内存溢出 源码: #incl ...

  9. USB转串口CH340接线方法

    https://blog.csdn.net/wangjiaweiwei/article/details/49612207 USB转串口模块可以使用5V电压供电,需要将跳帽按下图安装. USB转串口模块 ...

  10. C语言结构体实例-创建兔子

    参考裸编程思想. #include <stdio.h> //#include "ycjobject.h" // 颜色定义 #define CL_BLACK 0 #def ...