memcached client for java客户端API:memcached client for java
网址:http://www.whalin.com/memcached
调用测试类
MClient.java
- package bcndyl.test;
- import org.springframework.context.ApplicationContext;
- import org.springframework.context.support.FileSystemXmlApplicationContext;
- import com.danga.MemCached.MemCachedClient;
- public class MClient {
- public static void main(String[] args){
- ApplicationContext ctx=new FileSystemXmlApplicationContext( "src/applicationContext.xml" );
- MemCachedClient mc = (MemCachedClient)ctx.getBean("memcachedClient" );
- for ( int i= 0 ; i< 100 ; i++){
- //try{Thread.sleep(2000);}catch(Exception e){}
- mc.set("key" +i, "value" +i);
- }
- try {Thread.sleep( 5000 );} catch (Exception e){}
- for ( int i= 0 ; i< 100 ; i++){
- System.out.println("get " +i+ " value " +mc.get( "key" +i));
- }
- }
- }
package bcndyl.test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.danga.MemCached.MemCachedClient;
public class MClient {
public static void main(String[] args){
ApplicationContext ctx=new FileSystemXmlApplicationContext("src/applicationContext.xml");
MemCachedClient mc = (MemCachedClient)ctx.getBean("memcachedClient");
for(int i=0; i<100; i++){
//try{Thread.sleep(2000);}catch(Exception e){}
mc.set("key"+i, "value"+i);
}
try{Thread.sleep(5000);}catch(Exception e){}
for(int i=0; i<100; i++){
System.out.println("get "+i+" value "+mc.get("key"+i));
}
}
}
spring配置文件
- <? xml version = "1.0" encoding = "UTF-8" ?>
- < beans
- xmlns = "http://www.springframework.org/schema/beans"
- xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd" >
- < bean id = "memcachedPool" class = "com.danga.MemCached.SockIOPool" factory-method = "getInstance"
- init-method = "initialize" destroy-method = "shutDown" >
- < constructor-arg > < value > neeaMemcachedPool </ value > </ constructor-arg >
- < property name = "servers" >
- < list >
- < value > 192.168.227.20:12111 </ value >
- < value > 192.168.227.20:12112 </ value >
- </ list >
- </ property >
- < property name = "initConn" > < value > 20 </ value > </ property >
- < property name = "minConn" > < value > 10 </ value > </ property >
- < property name = "maxConn" > < value > 50 </ value > </ property >
- < property name = "maintSleep" > < value > 30 </ value > </ property >
- < property name = "nagle" > < value > false </ value > </ property >
- < property name = "socketTO" > < value > 3000 </ value > </ property >
- <!--
- < property name = "initConn" > < value > </ value > </ property >
- < property name = "initConn" > < value > </ value > </ property > -- >
- </ bean >
- < bean id = "memcachedClient" class = "com.danga.MemCached.MemCachedClient" >
- < constructor-arg > < value > neeaMemcachedPool </ value > </ constructor-arg >
- < property name = "compressEnable" > < value > true </ value > </ property >
- < property name = "compressThreshold" > < value > 4096 </ value > </ property >
- </ bean >
- </ beans >
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="memcachedPool" class="com.danga.MemCached.SockIOPool" factory-method="getInstance"
init-method="initialize" destroy-method="shutDown">
<constructor-arg><value>neeaMemcachedPool</value></constructor-arg>
<property name="servers">
<list>
<value>192.168.227.20:12111</value>
<value>192.168.227.20:12112</value>
</list>
</property>
<property name="initConn"><value>20</value></property>
<property name="minConn"><value>10</value></property>
<property name="maxConn"><value>50</value></property>
<property name="maintSleep"><value>30</value></property>
<property name="nagle"><value>false</value></property>
<property name="socketTO"><value>3000</value></property>
<!--
<property name="initConn"><value></value></property>
<property name="initConn"><value></value></property>-->
</bean>
<bean id="memcachedClient" class="com.danga.MemCached.MemCachedClient">
<constructor-arg><value>neeaMemcachedPool</value></constructor-arg>
<property name="compressEnable"><value>true</value></property>
<property name="compressThreshold"><value>4096</value></property>
</bean>
</beans>
经过测试,个人感觉,这个java的memcached API比spymemcached要好用,可以让spring来维护这个memcached的connection连接池
http://lveyo.javaeye.com/blog/246564