永发信息网

如何采用Memcached实现分布式Session

答案:2  悬赏:80  手机版
解决时间 2021-01-28 11:26
  • 提问者网友:嗝是迷路的屁
  • 2021-01-27 13:29
如何采用Memcached实现分布式Session
最佳答案
  • 五星知识达人网友:鱼忧
  • 2021-01-27 14:59
一。分布式Session的几种实现方式 1.基于数据库的Session共享 2.基于NFS共享文件系统 3.基于memcached 的session,如何保证 memcached 本身的高可用性? 4. 基于resin/tomcat web容器本身的session复制机制 5. 基于TT/Redis 或 jbosscache 进行 .
全部回答
  • 1楼网友:轻雾山林
  • 2021-01-27 15:34
以non-sticky模式为例,首先需要安装memcached的服务器,这个在上一篇中已经讲述过了。然后在tomcat的$catalina_home/conf/context.xml文件配置sessionmanager,具体配置如下: ?其中,memcachednodes指定了memcached的节点;sticky表示是否采用sticky模式;sessionbackuoasync表示是否采用异步方式备份session;lockingmode表示session的锁定模式;auto表示对于只读请求,session将不会被锁定,如果包含写入请求,则session会被锁定;requesturiignorepattern表示忽略的url; transcoderfactoryclass用来指定序列化的方式,这里采用的是kryo序列化,也是memcached-session-manager比较推荐的一种序列化方式。也可以采用其他序列化方式,譬如:javolution-serializer, xstream-serializer, flexjson-serializer。 ?memcached-session-manager依赖于memcached-session-manager-{version}.jar,如果使用的是tomcat6,则还需要下载memcached-session-manager-tc6-{version}.jar,如果是tomcat7则采用memcached-session-manager-tc7-{version}.jar的包(博主采用的是tomcat7+jdk7)。还需要spymemcached-2.7.3.jar,在启动tomcat之前需要将这些jar包放到tomcat的lib目录下。如果采用kryo方式序列化,还需要加入其他一些包
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯