Session是web开发中常用到的一种技术,小伙伴们知道session该如何实现共享吗?下面让小编为你介绍介绍吧。
一、环境搭建
操作系统:windows 7 64位
http server:nginx 1.9.7
缓存系统:memcached
Servlet容器:apache-tomcat-7.0.65
二、实现步骤
1)、把tomcat复制为两份,避免tomcat端口号发生冲突,并修改tomcatconfserver.xml 端口号。
2)、在两个tomcatwebapps下建立文件夹,之后新建一个jsp文件,jsp文件内容为< %= session.getId() % >,为了区别跳转路径我们还可以在内容中追加编号,如tomcat1、tomcat2等。
3)、启动所有tomcat并访问 http: //localhost:port/<新建的文件夹>/<jsp文件>。此时,两个tomcat都是独立运行的。所以我们需要配置nginx集成所有tomcat。
4)、修改ngxigconf ginx.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启动。
6)、按照如上例子通过浏览器访问
http://localhot/<文件夹>/
7)、停止tomcat,将下载好的memcached相关的jar包放到tomcatlib下
8)、解压memcached,使用cmd命令进入该目录,执行 memcached -d install命令,安装好后,使用memcached -d start启动memcached服务。
9)、修改tomcatconfcontext.xm文件,将以下内容添加到标签内。
<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/<文件夹>/
以上就是session实现共享的所有内容了,小伙伴们明白了吗?如果还想知道更多关于session的常见问题就请持续关注我们网站吧。
推荐阅读: