使用memcachedclientXmemcached与Spring整合
1 简单介绍
Xmemcached是一个高性能的基于java nio的memcachedclient。在经过三个RC版本号后。正式公布1.10-final版本号。
xmemcached特性一览:
1、高性能
2、支持完整的memcached文本协议,二进制协议将在1.2版本号实现。
3、支持JMX,能够通过MBean调整性能參数、动态加入/移除server、查看统计等。
4、支持client统计
5、支持memcached节点的动态增减。
6、支持memcached分布:余数分布和一致性哈希分布。
7、很多其它的性能调整选项。
2 与Spring整合
XMemcached从1.1.2開始。能灵活方便的与Spring Framework整合在一起使用。
2.1 最简单样例
<bean name="memcachedClient" class="net.rubyeye.xmemcached.utils.XMemcachedClientFactoryBean">
<property name="servers">
<value>host1:port1 host2:port2</value>
</property>
</bean>
然后在bean中就能够使用memcachedClient了。
2.2 复杂一点儿的样例
<bean name="memcachedClient"
class="net.rubyeye.xmemcached.utils.XMemcachedClientFactoryBean">
<property name="servers">
<value>host1:port1 host2:port2 host3:port3</value>
</property>
<property name="weights">
<list>
<value>1</value>
<value>2</value>
<value>3</value>
</list>
</property>
<property name="sessionLocator">
<bean class="net.rubyeye.xmemcached.impl.KetamaMemcachedSessionLocator"></bean>
</property>
<property name="transcoder">
<bean class="net.rubyeye.xmemcached.transcoders.SerializingTranscoder" />
</property>
<property name="bufferAllocator">
<bean class="net.rubyeye.xmemcached.buffer.SimpleBufferAllocator"></bean>
</property>
</bean>
当中各參数的意义:
參数 |
含义 |
servers |
server列表。格式:ip:port |
weights |
主机映射:host1相应1号、host2相应2号.. |
sessionLocator |
Session 分配器,有自带的。影响分布式 |
transcoder |
通信编码方式 |
bufferAllocator |
缓冲区分配器 |
注:
默认标准Hash, hash(key) mod server_count (余数分布)
MemcachedClientBuilder builder = new XMemcachedClientBuilder( AddrUtil.getAddresses("server1:11211 server2:11211 server3:11211")); MemcachedClient mc = builder.build();
能够改为Consistent Hash(一致性哈希):
MemcachedClientBuilder builder = new XMemcachedClientBuilder( AddrUtil.getAddresses("server1:11211 server2:11211 server3:11211")); builder.setSessionLocator(new KetamaMemcachedSessionLocator()); MemcachedClient mc = builder.build();
使用memcachedclientXmemcached与Spring整合相关推荐
- Strutsw2与Spring整合流程-简述
1. 新建WEB工程: 2. 导入struts2开发包,和资源配置文件 ① globalMessages.properties ② struts.properties 3. ...
- 最新Spring整合MyBatis详解教程
目录 1.导入相关jar包 1. junit 2. mybatis 3. mysql 4. spring相关 5. aop织入 6. mybatis-spring 7. lombok(选用) 2.回顾 ...
- Spring整合Struts2
①导入Struts2 jar包 ②在web.xml文件中创建过滤器 <?xml version="1.0" encoding="UTF-8"?> & ...
- shiro和Spring整合使用注解时没有执行realm的doGetAuthorizationInfo回调方法的解决
shiro和Spring整合使用注解时没有执行realm的doGetAuthorizationInfo回调方法的解决 from :http://blog.csdn.net/babys/article/ ...
- Spring整合CXF,发布RSETful 风格WebService
这篇文章是承接之前CXF整合Spring的这个项目示例的延伸,所以有很大一部分都是一样的.关于发布CXF WebServer和Spring整合CXF这里就不再多加赘述了.如果你对Spring整合CXF ...
- springMvc+mybatis+spring 整合 包涵整合activiti 基于maven
2019独角兽企业重金招聘Python工程师标准>>> 最近自己独立弄一个activiti项目,写一下整合过程: 环境:jdk1.7 tomcat7.0 maven3.5 ecli ...
- activiti自己定义流程之Spring整合activiti-modeler5.16实例(四):部署流程定义
注:(1)环境搭建:activiti自己定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建 (2)创建流程模型:activiti自己定义流程之Spr ...
- Spring 整合 Junit
Spring 整合 Junit 问题 在测试类中,每个测试方法都有以下两行代码: ApplicationContext ac = new ClassPathXmlApplicationContext( ...
- spring整合mybatis(入门级简单教程1)--在spring中配置c3p0,并成功测试
引子:spring整合mybatis.因为,我们看完(我就是这样的)spring和mybatis之后,本想自己写一个小小的项目,以便加深理解,但是我发现在spring中整合mybatis并不是一件容易 ...
最新文章
- hive-数据倾斜记录分享
- Asp.Net Core异常处理整理
- LintCode: Single Number II
- 微信小程序,小游戏sockect报错修复集合
- python内置函数可以用来_Python内置函数——compile
- [流媒体]Android 播放HLS/RTSP的原生类库 MediaPlayer
- ubuntu14.04 设置静态ip
- es6 Promise -- 封装
- OpenCV-图像处理(17、Sobel算子)
- InnoDB存储引擎学习笔记(更新ing)
- 如何为Jupyter notebook创建R内核
- 计算机思维概述ppt,常见的第一讲 计算思维概述.ppt
- hadoop常用端口号
- 大学数据库创建与查询实战——查询
- 面试官通用面试问题---------------经典回答
- ctf练习之闯关游戏
- java dom4j读写锁,java锁的深度化-重入锁,读写锁,乐观锁,悲观锁
- 视频拆条VTS(Video Topics Segmentation)
- C# 模式匹配完全指南
- Unity2D游戏开发之保卫萝卜
热门文章
- NEUACM 2015年一月月赛
- [原创]有关PHP 中 MVC的个人见解
- 使用 ConnectionStringBuilder 对象创建精确连接字符串
- ES6新特性_const声明常量以及特点---JavaScript_ECMAScript_ES6-ES11新特性工作笔记005
- SpringCloud学习笔记021---SpringBoot修改内部Tomcat默认端口
- MySQL 在控制台插入数据时,中文乱码问题的解决
- EJB3.0学习笔记--SOAP-AXIS--深入Soap引擎
- 三种model 在lfw 上的精度
- Git分支 and PullFetchMerge
- 随想录(十年嵌入式总结)