JAVA客户端调用memcached
2015-02-03 18:43
417 查看
package com.memcached;
import java.net.InetSocketAddress;
import java.util.concurrent.Future;
import net.spy.memcached.MemcachedClient;
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;
/**
* 创建 memcached连接池
* @author peidw
*
*/
public class MemcachedServer {
/**
* 客户端API:memcached client for ja
*/
public void mctest(){
String[] servers=new String[]{"192.168.75.132:11211"};
Integer[] weights={1};
// 从连接池获取一个连接实例
SockIOPool pool = SockIOPool.getInstance();
// 设置服务器和服务器负载量
pool.setServers( servers );
pool.setWeights( weights );
//设置初始连接数5 最小连接数 5 最大连接数 250
//设置一个连接最大空闲时间6小时
pool.setInitConn( 5 );
pool.setMinConn( 5 );
pool.setMaxConn( 250 );
pool.setMaxIdle( 1000 * 60 * 60 * 2 );
// 设置主线程睡眠时间 每隔30秒醒来 然后 开始维护 连接数大小
pool.setMaintSleep( 30 );
// 关闭nagle算法
// 设置 读取 超时3秒钟 set the read timeout to 3 secs
// 不设置连接超时
pool.setNagle( false );
pool.setSocketTO( 3000 );
pool.setSocketConnectTO( 0 );
pool.initialize();
MemCachedClient memCachedClient = new MemCachedClient();
for(int i = 0; i < 10; i++) {
/*将对象加入到memcached缓存*/
boolean success = memCachedClient.set("" + i, "Hello!");
/*从memcached缓存中按key值取对象*/
String result = (String) memCachedClient.get("" + i);
System.out.println(String.format("set( %d ): %s", i, success));
System.out.println(String.format("get( %d ): %s", i, result));
}
}
public void testSpyMem(){
try{
/*建立MemcachedClient 实例,并指定memcached服务的IP地址和端口号*/
MemcachedClient mc = new MemcachedClient(new InetSocketAddress("192.168.75.132", 11211));
Future<Boolean> b = null;
/*将key值,过期时间(秒)和要缓存的对象set到memcached中*/
b = mc.set("neea:testDaF:ksIdno", 900, "someObject");
System.out.println(mc.get("neea:testDaF:ksIdno")+"\n");
if(b.get().booleanValue()==true){
mc.shutdown();
}
}
catch(Exception ex){
ex.printStackTrace();
}
}
public static void main(String[] args) {
MemcachedServer ms=new MemcachedServer();
ms.mctest();
ms.testSpyMem();
}
}
import java.net.InetSocketAddress;
import java.util.concurrent.Future;
import net.spy.memcached.MemcachedClient;
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;
/**
* 创建 memcached连接池
* @author peidw
*
*/
public class MemcachedServer {
/**
* 客户端API:memcached client for ja
*/
public void mctest(){
String[] servers=new String[]{"192.168.75.132:11211"};
Integer[] weights={1};
// 从连接池获取一个连接实例
SockIOPool pool = SockIOPool.getInstance();
// 设置服务器和服务器负载量
pool.setServers( servers );
pool.setWeights( weights );
//设置初始连接数5 最小连接数 5 最大连接数 250
//设置一个连接最大空闲时间6小时
pool.setInitConn( 5 );
pool.setMinConn( 5 );
pool.setMaxConn( 250 );
pool.setMaxIdle( 1000 * 60 * 60 * 2 );
// 设置主线程睡眠时间 每隔30秒醒来 然后 开始维护 连接数大小
pool.setMaintSleep( 30 );
// 关闭nagle算法
// 设置 读取 超时3秒钟 set the read timeout to 3 secs
// 不设置连接超时
pool.setNagle( false );
pool.setSocketTO( 3000 );
pool.setSocketConnectTO( 0 );
pool.initialize();
MemCachedClient memCachedClient = new MemCachedClient();
for(int i = 0; i < 10; i++) {
/*将对象加入到memcached缓存*/
boolean success = memCachedClient.set("" + i, "Hello!");
/*从memcached缓存中按key值取对象*/
String result = (String) memCachedClient.get("" + i);
System.out.println(String.format("set( %d ): %s", i, success));
System.out.println(String.format("get( %d ): %s", i, result));
}
}
public void testSpyMem(){
try{
/*建立MemcachedClient 实例,并指定memcached服务的IP地址和端口号*/
MemcachedClient mc = new MemcachedClient(new InetSocketAddress("192.168.75.132", 11211));
Future<Boolean> b = null;
/*将key值,过期时间(秒)和要缓存的对象set到memcached中*/
b = mc.set("neea:testDaF:ksIdno", 900, "someObject");
System.out.println(mc.get("neea:testDaF:ksIdno")+"\n");
if(b.get().booleanValue()==true){
mc.shutdown();
}
}
catch(Exception ex){
ex.printStackTrace();
}
}
public static void main(String[] args) {
MemcachedServer ms=new MemcachedServer();
ms.mctest();
ms.testSpyMem();
}
}
相关文章推荐
- memcached 02 - java客户端调用
- Java客户端调用memcached
- Windows下Memcached安装及Java客户端调用
- JAVA客户端调用memcached比较
- JAVA客户端调用memcached比较
- JAVA客户端调用memcached
- JAVA客户端调用memcached
- JAVA客户端调用memcached比较
- JAVA客户端API调用memcached两种方式
- Windows下Memcached安装及Java客户端调用
- java客户端调用Memcached的三种方式(整合)
- JAVA客户端调用memcached比较
- JAVA客户端调用memcached
- JAVA客户端调用memcached
- JAVA调用Tuxedo服务——使用JNI封装Tuxedo客户端的一个例子
- [转]hibernate-memcached补丁:支持Whalin的MemCached Java客户端
- 利用Axis2开发WebService(3)---用Java实现调用WebService的客户端程序
- Invoke WCF service from Java Client with Authentication (X.509 Certificate) Java 客户端调用WCF服务 需要安全验证
- Eclipse使用axis2生成客户端调用时最后一步出现an error occurred while completing process -java.lang.reflect.InvocationTargetException
- 客户端执行 DDL下拉框调用页面JAVACRIP 涵数ddlQuery.Attributes.Add("onchange","changeSearchText();"); DataGrid 绑定项调用JAVASCRIPT,客户端