Tomcat的session集群和session服务器(2)

Tomcat的session集群和session服务器

Tomcat的session集群和session服务器

调度至不同的节点上,session信息没有发上变化,测试完成。

基于memcached+MSM实现session服务器

实验拓扑

Tomcat的session集群和session服务器

实验环境:

192.168.1.116  #http服务器

192.168.1.106  #tomcat node1

192.168.1.127  #tomcat node2

192.168.1.121,192.168.1.122    #memcached服务器

工作原理:

用户第一次访问时,服务器端会创建会话信息,保存在进程中,实时同步至memcache,若下一次调度至其他节点上,该节点首先会检查自己的会话区域,若没有这个用户的会话,就去memcache中找这个会话信息,然后将这个会话信息从memcache读到自己的web container中,若会话更新也会立刻同步至memcache中。之后同一个客户端的某一次请求调度至之前访问过的节点,该节点会先去memcache中检查本地的会话信息是否和memcache上的同步,如果不同步从memcache读取新数据覆盖自己的原有数据。

memcached-session-manager简介

memcached-session-manager(msm)为Google提供的一款工具,能够实现将tomcat会话信息保存至memcache中,并在需要时将对应信息读入web container。它可以工作在两种模式下:1)会话有粘性,2)会话无粘性,即前端的代理服务器是否启用了stickysession(同一客户端请求代理至同一服务器)。上述的工作原理是工作在会话无粘性的模式下,若在会话有粘性的场景中,当用户来访问时,就不需要每次去memcache中检查会话信息是不是最新的,会话更新后,也不需要将会话信息及时同步至memcache中,可以节约一些步骤和带宽。

memcached-session-manager的下载地址,,该项目基于Java开发,需要使用如下的jar文件(version版本号):

memcached-session-manager-version.jar

memcached-session-manager-tc(6|7|8)-version.jar

spymemcached-version.jar

msm-javolution-serializer-version.jar

javolution-version.jar

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/317f5bb9ad7fa1e5f2b7f1fe888d5d0e.html