文档章节

XMemcached-for-java-Memcached使用说明

zzuqiang
 zzuqiang
发布于 2016/07/29 09:01
字数 875
阅读 22
收藏 0

XMemcached-for-java-Memcached使用说明

1、下载memcached.exe 安装程序

官网不推荐将memcached安装到window OS中、为了测试使用先在win中安装。

2、安装memcached

在本机%memcached_home%路径下 使用如下指令:

Memcached.ext –d install  

也可以使用:

memcached.ext  -l localhost  -p 11212 -m 1024 
在本机的11212 端口安装memcached 服务(可以用内存为 1G)

我本机已经装过了、因此使用如下:

输入图片说明 注释:如果你在你本机就不能telnet 通过本机的ip和端口说明你本机的telnet服务没启动。 如果你在本机可以telnet通过但是你的同事不能telnet你的电脑、看看你的“防火墙”是否开启、如果开启关闭就行了。你也可以让memcached安装为你的服务、那就是后话了。 启动memcached服务后会在window资源管理器中看如下服务进程:

输入图片说明

3、查看memcached服务状态

使用telnet localhost 11211 连接到memcached服务器 等待n秒吧、然后输入stats会返回:

输入图片说明

输入图片说明 上面两张图片中各个字段的意义: 字段值 字段值说明 pid Memcached进程ID Uptime Memcached运行时间,单位:秒 time Memcached当前的UNIX时间 version Memcached的版本号 libevent 2.0.21-stable pointer_size 32 curr_connections 当前连接数量 total_connections Memcached运行以来接受的连接总数 connection_structures Memcached分配的连接结构的数量 reserved_fds 20 cmd_get 查询请求总数 cmd_set 存储(添加/更新)请求总数 cmd_flush cmd_touch 0 get_hits 查询成功获取数据的总次数 get_misses 查询成功未获取到数据的总次数 delete_hits 查询成功获取数据的总次数 delete_misses 查询成功未获取到数据的总次数 rusage_user 该进程累计的用户时间,单位:秒 rusage_system 该进程累计的系统时间,单位:秒 bytes Memcached当前存储内容所占用的字节数 curr_items Memcached当前存储的内容数量 total_items Memcached启动以来存储过的内容总数 evictions reclaimed …… 具体参数意义可查看:查看memcache的status

4、使用xmemcached 管理cache

上面说了很多memcached的东西、说说客户端程序。 java的memcached客户端比较:

  • 1、XMemcached (我们使用的)
  • 2、SpyMemcached
  • 3、Memcached Client for Java(官方提供的java 客户端)

5、XMemcached vs Spring 配置

memcached.properties 配置项、由于在我本机测试仅仅用到server1、在生产环境可以配置集群。

#连接池大小即客户端个数
memcached.connectionPoolSize=50
# TODO 
memcached.failureMode=true
#server1   
memcached.server1.host=192.168.2.102
memcached.server1.port=11211
memcached.server1.weight=4
#server2
memcached.server2.host=10.11.155.41
memcached.server2.port=11211
memcached.server2.weight=3
#server3
memcached.server3.host=10.10.76.31
memcached.server3.port=11211
memcached.server3.weight=2
#server4
memcached.server4.host=10.10.76.35
memcached.server4.port=11211
memcached.server4.weight=1

在Spring中的配置文件为:applicationContext-memcached-ws.xml 配置文件内容为:

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
		http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context 
		http://www.springframework.org/schema/context/spring-context.xsd">

	<!-- http://code.google.com/p/xmemcached/wiki/Spring_Integration
	<context:property-placeholder location="memcached.properties" />
	 -->
	<bean 	id="memcachedClientBuilder"
		  	class="net.rubyeye.xmemcached.XMemcachedClientBuilder"
			p:connectionPoolSize="${memcached.connectionPoolSize}"
			p:failureMode="${memcached.failureMode}">
		<constructor-arg>
			<list><bean class="java.net.InetSocketAddress">
					<constructor-arg><value>${memcached.server1.host}</value>
					</constructor-arg>
					<constructor-arg><value>${memcached.server1.port}</value>
					</constructor-arg>					 
				</bean></list>
		</constructor-arg>
		<constructor-arg><list><value>${memcached.server1.weight}</value></list>
		</constructor-arg>       
		<property name="commandFactory">
			<bean	class="net.rubyeye.xmemcached.command.TextCommandFactory" />
		</property>
		<property name="sessionLocator">
		<bean class="net.rubyeye.xmemcached.impl.KetamaMemcachedSessionLocator" />
		</property>
		<property name="transcoder">
			<bean class="net.rubyeye.xmemcached.transcoders.SerializingTranscoder" />
		</property>
	</bean>
	<bean id="memcachedClient" factory-bean="memcachedClientBuilder"
		  factory-method="build"  destroy-method="shutdown" />
	<!-- memcached 管理类配置项 -->	  
	<bean id="memcachedManager" class="com.xxx.ws.cache.MemcachedManager">
		<property name="memcachedClient" ref="memcachedClient"></property>
	</bean>	  	  
</beans>

© 著作权归作者所有

共有 人打赏支持
zzuqiang
粉丝 23
博文 61
码字总数 133582
作品 0
郑州
程序员
私信 提问
Xmemcached 2.0 发布,高性能Java memcached客户端

高性能Java memcached客户端——Xmemcached发布2.0.0版本,主要改进如下: 性能优化,在测试中文本协议实现有接近10%的性能提升。 批量获取key如果包含相同的key,会缓存反序列化后的对象,减...

dennis_zhuang
2014/04/28
6.7K
5
XMemcached 2.2.0 发布,Java Memcached 客户端

Java 开源 Memcached 客户端 XMemcached 发布 2.2.0,这是一次推荐升级,特别是对于使用二进制协议的用户。 主要变更如下: 修复部分场景下遇到的超时异常,参见 #30 修复心跳失败计数错误。...

dennis_zhuang
2016/11/08
1K
2
Xmemcached 1.3.2 发布

Xmemcached是一个开源的java memcached client,具有高性能、更易用、功能完善等优点,距离上次发布1.3.1已经超过两个月,现在正式发布1.3.2这个新版本,主要的改进如下: 1、Bug修复,从1.3...

鉴客
2011/03/29
320
0
Xmemcached 1.2.1发布

Xmemcached 1.2.1正式发布,这是1.2.0发布以来的第一个小版本,主要改进是修复BUG、内部重构以及添加一些新特性。 主要改进如下: 1、为Kestrel 1.2添加delete方法支持,kestrel 1.2发布后正...

红薯
2009/12/07
179
0
java的memcached客户端比较

1、XMemcached 2、SpyMemcached 3、Memcached Client for Java 这3中客户端哪种使用的比较多,并且稳定,我看到性能方面貌似是xmemcached占优,但是不知道在实际项目中稳定性怎么样...

cswy
2012/05/02
4.7K
7

没有更多内容

加载失败,请刷新页面

加载更多

Python中判断字符串是否包含中文

Python import reRE = re.compile(u'[\u4e00-\u9fa5]', re.UNICODE)match = re.search(RE, str)if match is None:# 没有包含中文字符 参考 Python regular expressions return true/f......

亚林瓜子
4分钟前
0
0
《CNCF × Alibaba 云原生技术公开课》正式首播

《CNCF × Alibaba 云原生技术公开课》立即观看:点击立即观看 云原生最初来描述云上应用的典型架构与特性,随着容器、Kubernetes、Serverless、FaaS技术的演进,CNCF(云原生计算基金会)把...

mcy0425
4分钟前
0
0
网站漏洞如何修复网站程序问题

jeecms 最近被爆出高危网站漏洞,可以导致网站被上传webshell木马文件,受影响的版本是jeecms V6.0版本到jeecmsV7.0版本。该网站系统采用的是JAVA语言开发,数据库使用的是oracle,mysql,sql数...

网站安全
7分钟前
0
0
git 中“warning: CRLF will be replaced by LF in”解决方案

https://stackoverflow.com/questions/5834014/lf-will-be-replaced-by-crlf-in-git-what-is-that-and-is-it-important...

qwfys
12分钟前
0
0
Spring Boot配置ssl证书启用HTTPS协议

一 、点睛 SSL是为网络通信提供安全及数据完整性的一种安全协议,SSL在网络传输层对网络连接进行加密。SSL协议位于TCP/IP协议和各种应用层协议之间,为数据通信提供安全支持。 SSL协议分为两...

故久呵呵
14分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部