简称msm
memcached 安装与使用
1. 编译安装,先要有gcc (yum -y install gcc)
2. 安装libevent: ./configure --prefix=/opt/libevent; make && make install
3. 安装memcached: ./configure --prefix=/opt/memcached --with-libevent=/opt/libevent/; make && make install
启动memcached: /opt/memcached/bin/memcached -d -u root -m 128 -p 11211 -c 1024
-d 后台进程
-u 启动用户
-m 使用内存大小
-p 使用端口
-c 最大连接数
msm配置
1. 复制jar包到tomcat/lib目录,jar分三类
1)spymemcached.jar memcached java客户端
2)msm相关的包
memcached-session-manager-{version}.jar 核心包
memcached-session-manager-tc{tomcat-version}-{version}.jar Tomcat版本相关的包
3)序列化工具包,有多种可选方案,不设置时使用jdk自带序列化,其它可选kryo,javolution,xstream,flexjson等
msm-{tools}-serializer-{version}.jar
其它序列化工具相关包 一般第三方序列化工具不需要实现serializable接口
2. 配置Context,加入处理session的Manager MemcachedBackupSessionManager
Context配置查找顺序:
1)conf/context.xml 全局配置,作用于所有应用
2) conf/[enginename]/[hostname]/context.xml.default 全局配置,作用于指定host下全部应用
3) conf/[enginename]/[hostname]/[contextpath].xml 只作用于contextpath指定的应用
4) 应用META-INF/context.xml 只作用于本应用
5) conf/server.xml
所以,只希望session管理作用于特定应用,最好用3,4方式设置,希望作用全体,可用1,2,5设置
3.在server.xml文件中找到
failoverNodes="n1" #在另一个tomcat中改为n2,
requestUriIgnorePattern=".*\.(jpg|png|css|js)$"
memcachedProtocol="binary"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>