基于kryo序列化方案的memcached-session-manager多memcached...
为什么80%的码农都做不了架构师?>>>
上次基于Java IO的序列化方案配置了memcached-session-manager,但是性能不好,现在先简单配置成基于kryo的
- <Context path="/mobilemail" docBase="D:\webapp\WebRoot" reloadable="true">
- <Manager
- className= "de.javakaffee.web.msm.MemcachedBackupSessionManager"
- memcachedNodes= "n1:192.168.112.1:11211,n2:192.168.112.2:11211"
- sticky="false"
- lockingMode="auto"
- requestUriIgnorePattern= ".*\.(png|gif|jpg|css|js)$"
- sessionBackupAsync= "false"
- sessionBackupTimeout= "0"
- memcachedProtocol="binary"
- copyCollectionsForSerialization="true"
- transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
- customConverter="org.claros.commons.CustomKryoRegistration"
- />
- </Context>
注意customConverter配置的com.test.serializer.CustomKryoRegistration这个类是自己写的类,是用来注册一些特殊类型的,同时自己负责对这些类型的序列化,可以放在项目里,也可以单独打个jar包,把以后遇到的所有复杂类型都在这里即可。项目里遇到的kryo没有注册到的类就是session里的java.util.concurrent.ConcurrentHashMap这个类,反序列化的时候本来可以做得更高效些,这里只是为了演示,直接用kryo自带的MapSerializer来反序列化
- package com.test.serializer;
- import java.util.concurrent.ConcurrentHashMap;
- import com.esotericsoftware.kryo.Kryo;
- import com.esotericsoftware.kryo.serialize.MapSerializer;
- import de.javakaffee.web.msm.serializer.kryo.KryoCustomization;
- public class CustomKryoRegistration implements KryoCustomization {
- public void customize(Kryo kryo) {
- kryo.register(ConcurrentHashMap.class, new MapSerializer(kryo));
- }
- }
转载于:https://my.oschina.net/baobao/blog/17080
基于kryo序列化方案的memcached-session-manager多memcached...相关推荐
- tomcat + memcached session manager共享session
网上有很多关于通过MSM(memcached session manager)实现memcached共享session的文章,但是很多都是东拼西凑,误导别人.正巧最近有一个地方用到,特此总结一下. M ...
- 将tomcat的session信息通过memcached实现共享
为什么80%的码农都做不了架构师?>>> 1.先学大拿来点介绍 MSM(memcached-session-manager)支持tomcat6和tomcat7 ,利用Value ...
- 基于可靠消息方案的分布式事务(四):接入Lottor服务
在上一篇文章中,通过Lottor Sample介绍了快速体验分布式事务Lottor.本文将会介绍如何将微服务中的生产方和消费方服务接入Lottor. 场景描述 生产方:User服务 消费方:Auth服 ...
- 扫盲:php session缓存至memcached中的方法
memcached是一套分布式的快取系统,当初是Danga Interactive为了LiveJournal所发展的,但被许多软件(如MediaWiki)所使用.这是一套开放源代码软件,以BSD li ...
- Netty使用kryo序列化传输对象
Netty使用kryo序列化传输对象 横渡 Netty使用kryo序列化传输对象 - 简书参考文章:https://blog.csdn.net/eguid_1/article/details/7931 ...
- 广播变量kyro_利用Kryo序列化库是你提升Spark性能要做的第一件事
本文基于Spark2.1.0版本 套用官文Tuning Spark中的一句话作为文章的标题: *Often, choose a serialization type will be the first ...
- Packable-高效易用的序列化方案
一.前言 当我们需要对一些信息进行存储或者传输时,通常需要用一种数据协议,将信息转换为可存储或传输的形式(二进制字节流.经过编码的文本等). 特别地,当数据源是对象时,转化对象的过程被称为序列化,反之 ...
- java序列化方案对比
1.引言 目前移动客户端应用程序上,需要将用户内容持久化到设备上,一般任何feed流应用,如微博.推特.新闻客户端等都需要将内容做持久化操作,以便在内存回收后,再次进入程序能迅速恢复之前的内容.另外如 ...
- java kryo 序列化_java中的序列化方式及dubbo使用kryo序列化
java中的序列化方式: 1. 自带序列化 ObjectInputSteam. ObjectOutStream等 2. hession2 3. json ,xml等格式 4.kryo 5.FST - ...
最新文章
- DataGridView和ListT绑定不显示问题
- winForm调用HTTP短信接口
- centos7虚拟机使用docker搭建swoole环境
- JavaOne 2016——首日亮点
- 针对大表 设计高效的存储过程【原理篇】 附最差性能sql语句进化过程客串
- android studio 发布版本,Android Studio 4.1 Canary 版本发布
- css3中变形与动画(三)
- 华为荣耀30pro鸿蒙内测版,荣耀手机用户放心了 消息称荣耀30 Pro正在内测华为鸿蒙OS...
- ext js如何动态更改xtype_K8S ConfigMap 用于动态应用程序的实践
- NHibernate扩展:FluentNHibernate基础教程
- bzoj 2743spoj DQUERY - D-query
- 技术人 | 浅谈如何成为技术一号位?
- 【优化调度】基于matlab蚁群算法求解无等待流水线调度优化问题【含Matlab源码 1516期】
- dos计算机,dos操作系统,教您进入dos操作系统
- 学习网络技术的一些常用论坛和网站
- 学了Java可以做什么工作
- 读者问题答疑:4 个超级简单的 Linux 基础考试题!
- 三维建模学习太难?业内前辈给你指点一下!
- 电脑c盘数据迁移的方法
- 全球与中国缓震田径鞋市场深度研究分析报告
热门文章
- JS学习笔记之call、apply的用法
- Centos7.4 版本环境下安装Mysql5.7操作记录
- CSS控制字体在一行内显示不换行
- Rancher部署Traefik实现微服务的快速发现
- Docker 安装registry (构建私有镜像库)
- SpringBoot学习之路:09.Spring Boot中添加Filter应用
- 《机器学习与数据科学(基于R的统计学习方法)》——2.11 R中的SQL等价表述...
- Quartz2D绘图
- Java基础系列——IO流
- cisco aaa 授权后门测试