MSM项目FlexJson序列化参考文档。

序号(步骤)

需求描述

jar包列表:

spymemcached-2.11.1.jar

memcached-session-manager-tc8-1.8.0.jar

memcached-session-manager-1.8.0.jar

msm-flexjson-serializer-1.8.3.jar

flexjson-3.3.jar

jar包放到/tomcat/lib/

修改/tomcat/conf/context.xml,增加如下内容.

<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"

memcachedNodes="n1:192.168.0.215:20201 n2:192.168.0.221:20201"

requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$"

sessionBackupAsync="true"

sticky="false"

storageKeyPrefix=“static:kaoqin"

lockingMode="none"

sessionBackupTimeout="3000"

transcoderFactoryClass="de.javakaffee.web.msm.serializer.json.JSONTranscoderFactory"

copyCollectionsForSerialization="false" />

添加日志。

添加de.javakaffee.web.msm.level=FINE  到 $CATALINA_HOME/conf/logging.properties

注1:

各个参数的含义及其基本配置:

1.className。必须的。且是固定的,MemcachedBackupSessionManager 继承了org.apache.catalina.session.ManagerBase 并实现了org.apache.catalina.Manager接口。

2.memcachedNodes 必须。格式可以上空格分隔或者“,”分隔。节点数不宜过多。

3.requestUriIgnorePattern 可选。过滤请求。

4.sessionBackupAsync 可选。是否异步保存session。同步会保存完毕后才返回response,如果追求响应通常设置为true。默认是true。

5.sticky,可选。

6.backupThreadCount(自1.3,可选,默认数-CPU的内核)sticky=“false”起作用。

7.operationTimeout(自1.6.0,可选,默认 1000)。设置使用memcache操作的超时时间。

8.storageKeyPrefix(自1.8.0,可选,默认 webappVersion)支持静态参数和动态参数两种模式。静态参数格式:“static:kaoqin” session的格式为sessionid=kaoqin_jsessionid-n1。动态参数支持(host,context,webappVersion)。这里有一些例子,证明它的配置会创建一个存储键(会话ID为“foo”上下文路径“ctxt”和主机“HST”): * static:x -> x_foo * host -> hst_foo * host.hash -> e93c085e_foo * context -> ctxt_foo * context.hash -> 45e6345f_foo * host,context -> hst:ctxt_foo * webappVersion -> 001_foo * host.hash,context.hash,webappVersion -> e93c085e:45e6345f:001_foo

(注—---动态参数:  1.host是conf/server.xml中得<Host name=“localhost”>

2.host.hash 是host名字的hash码

3.context 是 上线文路径,通常是要在META-INF/context.xml 配置。或者是

/conf/Catalina/localhost/context.xml.default  或者是

/conf/Catalina/localhost/helloapp.xml 或者是/conf/context.xml或者是

/conf/server.xm文件中的<Host>元素中查找<Context>子元素。该<Context>元素的信息          只适用于单个Web应用。 如果定义context是root则会被忽略。

4.context.hash 是context的hash码。

5.webppVersion 是默认值

三个可以互相组合使用,可用逗号隔开。如context,host,我

)

9。sessionBackupTimeout。默认100毫秒.备份会话的超过100被认为是操作失败。

10.transcoderFactoryClass。

transcoderFactoryClass(自1.1,可选,默认 de.javakaffee.web.msm.JavaSerializationTranscoderFactory)

创建使用从memcached的串行/解串会话/转码器工厂的类名称。指定的类必须实现de.javakaffee.web.msm.TranscoderFactory并提供一个无参数的构造函数。其他TranscoderFactory实现都可以通过其他的包/罐状MSM-KRYO串器,MSM-XStream的串器 和MSM-javolution串器(如上述),这些上市和比较上SerializationStrategies。

可用TranscoderFactory实现

:* Java序列化:de.javakaffee.web.msm.JavaSerializationTranscoderFactory * KRYO基于序列:de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory * Javolution基于序列:de.javakaffee.web.msm.serializer。 javolution.JavolutionTranscoderFactory *基于XStream的系列化:de.javakaffee.web.msm.serializer.xstream.XStreamTranscoderFactory

11.copyCollectionsForSerialization:默认为false。

12.memcachedProtocol (since 1.3, optional, default text)

13.username (since 1.6.0, optional)

更多详细请查阅:

https://github.com/magro/memcached-session-manager/wiki/SetupAndConfiguration

注2:

最好的话可以使用kryo来实现序列化,这中序列化方式被认为是效果非常出众的,本次并未尝试成功。

memcache-session-manager(flexjson)的更多相关文章

  1. 分布式Session共享(二):tomcat+memcached实现session共享

    一.前言 本文主要测试memcached实现session共享的实现方式,不讨论如何让nginx参与实现负载均衡等. 二.环境配置 本测试在Window下进行 name version port To ...

  2. 分布式Session共享(一):tomcat+redis实现session共享

    一.前言 本文主要测试redis实现session共享的实现方式,不讨论如何让nginx参与实现负载均衡等. 二.环境配置 本测试在Window下进行 name version port Tomcat ...

  3. PHP面试常考内容之Memcache和Redis(2)

    你好,是我琉忆.继周一(2019.2-18)发布的"PHP面试常考内容之Memcache和Redis(1)"后,这是第二篇,感谢你的支持和阅读.本周(2019.2-18至2-22) ...

  4. PHP面试常考内容之Memcache和Redis(1)

    你好,是我琉忆.继上周(2019.2-11至2-15)发布的"PHP面试常考内容之面向对象"专题后,发布的第二个专题,感谢你的阅读.本周(2019.2-18至2-22)的文章内容点 ...

  5. [转载]抓包,端口镜像,monitor session命令(转)

    原文地址:抓包,端口镜像,monitor session命令(转)作者:浮云皓月 一.SPAN简介 SPAN技术主要是用来监控交换机上的数据流,大体分为两种类型,本地SPAN和远程SPAN. --Lo ...

  6. Android Priority Job Queue (Job Manager)(一)

     Android Priority Job Queue (Job Manager)(一) 一.为什么要引入Android Priority Job Queue (Job Manager)?如今的A ...

  7. Memcache 学习笔记(二)---- PHP 脚本操作 Memcache 服务器

     PHP 脚本操作 Memcache 服务器 一.PHP脚本操作Memcache方法 使用 PHP 脚本操作 Memcache,在 PHP 手册中有详细的介绍,我们可以实例化 Memcache 类,根 ...

  8. 转!!Java设置session超时(失效)的时间

    Java设置session超时(失效)的时间   在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动退出登录,销毁session具体设置的方法有三种:1 ...

  9. Cloudera Manager (centos)安装详细介绍

    文章全部来自:Cloudera Manager (centos)安装详细介绍http://www.aboutyun.com/thread-9190-1-1.html(出处: about云开发) 这里已 ...

  10. memcache常见现象(一)雪崩现象

    memcache常见现象(一)雪崩现象 解释:memcached雪崩现象就是因为缓存服务器出现问题导致数据库压力增大,导致数据库不能正常运行. 1.很多大的公司网站可能会有很多台缓存服务器,这样如果其 ...

随机推荐

  1. Data-structures-and-algorithms-interview-questions-and-their-solutions

    https://techiedelight.quora.com/500-Data-structures-and-algorithms-interview-questions-and-their-sol ...

  2. Python 集成开发环境(IDE)

      DiscoverSDK网站进行了一次调查 - 什么是最好的Python IDE,这里是调查的结果 ​​​Python是一种非常流行的开源编程语言.得益于无尽的模块选项,Python今天广泛用于脚本 ...

  3. Docker 容器网络

    默认网络 当安装docker时,它会自动创建3个网络.可以使用docker network ls 来查看.   zane@zane-V:~$ docker network ls NETWORK ID ...

  4. Incorrect column count: expected 1, actual 2

    List<Long> idList = queryForList("ass.pageQuery_sgIds", paramMap, Long.class); 报错:In ...

  5. java基础篇4之注解

    1 注解的应用(jdk1.5的新特性) 一个注解相当于一个特殊的类 例子: @SuppressWarning("deprecation") @Deprecated @Overrid ...

  6. 性能测试脚本开发(C&C#&Java)

    一.C语言实现及相关问题解决 LR:C函数-功能描述 LR:C函数-适用范围 LR:C函数-头信息传递 LR:C函数-字符串编码转换 lr_convert_string_encoding(" ...

  7. GTD实用指南

    以前通过余弦大牛博客接触到了GTD, 后来我自己接触之后呢, 我是非常讨厌GTD的, 因为太功利化了 反人类 我还是比较懒得··· 可是最近事情真的比较多,不得不做GTD了 = =  郁闷! 时间管理 ...

  8. UNP学习笔记(第十一章 名字与地址转换)

    域名系统 域名系统(Domain Name System,DNS)主要用于主机名字与IP地址之间的映射. 主机名既可以是一个简单得名字,如solaris,也可以是一个全限定域名,如solaris.un ...

  9. 重读金典------高质量C编程指南(林锐)-------第三章 命名规则

      3.1  共性规则 规则:标识符应该直观且可以拼读,可进行英语翻译. 规则:标识符的长度需要控制好,不应该太长. 规则:命名规则应该同操作系统或者开发工具等保持一致,比如大小写混用.AddChar ...

  10. BZOJ 2005 NOI2010 能量採集 数论+容斥原理

    题目大意:给定n和m.求Σ(1<=i<=n)Σ(1<=j<=m)GCD(i,j)*2-1 i和j的限制不同,传统的线性筛法失效了.这里我们考虑容斥原理 令f[x]为GCD(i, ...