ubuntuでMemcached環境を構築、テストする方法

1.インストール
sudo apt-get install memcached
memcached -d -m 64 -p 11211 -u root

2.Javaの場合、必要なjarファイル
commons-pool-1.6.jar
java_memcached-release_2.6.6.jar
slf4j-api-1.7.6.jar

3.参考ソースコード
package com.startnews24.mms;

import java.util.Date;
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;

public class MemcacheConnection {

protected static MemCachedClient mcc = new MemCachedClient();

protected static MemcacheConnection memCached = new MemcacheConnection();

static {
// サーバーリスト
String[] servers = { “127.0.0.1:11211" };
Integer[] weights = { 3 };

//socketインスタンス
SockIOPool pool = SockIOPool.getInstance();

// サーバーの設定
pool.setServers( servers );
pool.setWeights( weights );

//接続の初期数、最小値、最大接続数と最大処理時間
pool.setInitConn( 5 );
pool.setMinConn( 5 );
pool.setMaxConn( 250 );
pool.setMaxIdle( 1000 * 60 * 60 * 6 );

pool.setMaintSleep( 30 );

// TCPパラメータ
pool.setNagle( false );
pool.setSocketTO( 3000 );
pool.setSocketConnectTO( 0 );

//接続プールを初期化
pool.initialize();

//mcc.setCompressEnable( true );
//mcc.setCompressThreshold( 64 * 1024 );
}
protected MemcacheConnection()
{

}

/**
* ユニークなインスタンス
* @return
*/
public static MemcacheConnection getInstance()
{
return memCached;
}

/**
* 指定されたキャッシュに値を追加
* @param key
* @param value
* @return
*/
public boolean add(String key, Object value)
{
return mcc.add(key, value);
}

public boolean add(String key, Object value, Date expiry)
{
return mcc.add(key, value, expiry);
}

public boolean replace(String key, Object value)
{
return mcc.replace(key, value);
}

public boolean replace(String key, Object value, Date expiry)
{
return mcc.replace(key, value, expiry);
}

public boolean exists(String key){
return mcc.keyExists(key);
}

/**
* 指定されたキーワードに基いてオブジェクトを取得
* @param key
* @return
*/
public Object get(String key)
{
return mcc.get(key);
}

public static void main(String[] args)
{
MemcacheConnection cache = MemcacheConnection.getInstance();
long startDate=System.currentTimeMillis();
for (int i = 0; i < 100; i++) {
cache.add(“wow"+i, “welcome to arkgame.com"+i);
}
long endDate=System.currentTimeMillis();
long nowDate=(endDate-startDate)/1000;
System.out.println(nowDate);
System.out.print( " get value : " + cache.get( “wow97" ));
}
}

Linux

Posted by arkgame