一、JAVA访问memcache之Xmemcached
Xmemcached是采用nio连接,并发效率会高,大都采用该客户端。
1、引入Xmemcached
com.googlecode.xmemcached
xmemcached
2.0.0
2、配置客户端(结合Spring,factorybean是xmemecached内部提供的)
value="192.168.22.165:10001 192.168.22.165:10002" />
1
1
可以配置
nio连接数:connectionPoolSize
传输是文本还是二进制形式:commandFactory
不同的hash散列算法:sessionLocator
序列化方式:transcoder
多个服务器负载均衡:servers
服务器的比重:weights
bean工厂返回的是一个MemcachedClient client
3、使用客户端
client.set(“key1”, 12, “value”) //超时时间是秒
你也可以使用异步的方式
client.setWithNoReply(“key1”, 12, “value”);
其它操作,你参考memcache官方说明,每一个操作,都对应一个同名方法。
二、JAVA访问redis之Jedis
Jedis是redis官方第一位推荐的java客户端。
1、引入客户端
redis.clients
jedis
2.4.2
2、单连接使用jedis
官方示例:
Jedis jedis = new Jedis("localhost");
jedis.set("foo", "bar");
jedis.auth(password);
jedis.select(database);
String value = jedis.get("foo");
3、使用连接池
JedisPoolConfig poolConfig = new JedisPoolConfig();
poolConfig.setMaxTotal(32);
poolConfig.setMaxIdle(32);
poolConfig.setTestOnBorrow(true);
poolConfig.setMaxWaitMillis(6000);
JedisPool jedisPool =
new JedisPool(poolConfig, host, port, timeout, password, database);
jedis的连接池是直接实现的commons-pool的 org.apache.commons.pool2.impl.GenericObjectPool
建立连接池之后,如何使用。
参考:JAVA的那些池子