Memcached-session-manager原理

转载 2015年07月08日 00:26:20

我们先看下MSM的流程:



    

MSM(memcached-session-manager)支持tomcat6和tomcat7,利用Value(Tomcat阀)对Request进行跟踪。Request请求到来时,从memcached加载session,Request请求结束时,将tomcat session更新至memcached,以达到session共享之目的,支持sticky和non-sticky模式。

Sticky模式:                                                                                 

   tomcat session为主session,memcached为备session。

Request请求到来时,从memcached加载备session到tomcat (仅当tomcat jvmroute发生变化时,否则直接取tomcat session);Request请求结束时,将tomcat session更新至memcached,以达到主备同步之目的。

 

 (来源自网络)

Non-Sticky模式:                                                                            

   tomcat session为中转session,memcached1为主sessionmemcached 2为备session。Request请求到来时,从memcached 2加载备session到tomcat,(当 容器 中还是没有session 则从memcached1加载主session到tomcat,这种情况是只有一个memcached节点,或者有memcached1出错时),Request请求结束时,将tomcat session更新至主memcached1和备memcached2,并且清除tomcat session,以达到主备同步之目的。

 

  (来源自网络)

memcached使用LRU算法来处理缓存。但是毛病在于它不是全局的,而是基于slab。 这样你会发现在运行一段时间后,最早访问的那些用户的SESSION会莫名其妙的丢失,即使他们上一秒还有过操作。

请看memcached的内存分配算法

 http://wenku.baidu.com/view/90a6b19851e79b89680226d4.html

要解决基于 memcache 方案的数据丢失问题,可能解决的方案是:

1、使用memcachedb

 

2、引入持久化存储介质ZooKeeper

相关文章推荐

memcached-session-manager

  • 2015-11-02 12:56
  • 2.68MB
  • 下载

memcached-session-manager 配置问题

转载原稿地址:http://chenzhou123520.iteye.com/blog/1650212 注:配置文件如果写在context.xml中,则需要将所有jar,包括序列化包全部复制到tom...

MSM--Memcached_Session_Manager介绍及使用

MSM--Memcached_Session_Manager介绍及使用 我们都知道对于一些大型的web2.0的网站,在正式部署时一般是部署在不同故障域的多台应用服务器上,以j2ee应用为例,一般我们...

Memcached_Session_Manager介绍及使用

我们都知道对于一些大型的web2.0的网站,在正式部署时一般是部署在不同故障域的多台应用服务器上,以j2ee应用为例,一般我们都会部署在tomcat下,假如我们部署了10台tomcat服务器,那这10...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)