java應用Memcached簡略教程。本站提示廣大學習愛好者:(java應用Memcached簡略教程)文章只能為提供參考,不一定能成為您想要的結果。以下是java應用Memcached簡略教程正文
Memcached作為一個高並發內存Cached體系被許多年夜公司應用,比來也一向在用Memcached做項目也積聚了一些相干經歷。
Install
Memcached的裝置很簡略,在Ubuntu上面一行敕令弄定。
sudo apt-get install memcached
Start
現實應用的時刻,memcached須要調劑內存年夜小和端標語等敕令,則啟動的應用時用以下的Command就行。
usr/local/bin/memcached -p 11211 -m 64m -d
-p 指定端標語
-m 指定內存年夜小
-d 作為daemon在後台啟動
假如想trouble shotting 則加 -vv
Test
Test也很簡略,裝置官網的敕令就行
telnet localhost 11211
外面就可以Get和Set了。
Use in Java
因為項目是java的,所以以java為例子來引見Java下Memcached的應用。
Java下Memcached的客戶端許多,這裡引見spymemcached
spymemcached的應用很簡略,在maven項面前目今面,我們參加以下依附。
<dependency>
<groupId>net.spy</groupId>
<artifactId>spymemcached</artifactId>
<version>2.9.1</version>
</dependency>
如許我們就可以對Memcached操作了。
public class Memcached {
private static MemcachedClient MEMCACHED_CLIENT;
static {
try {
MEMCACHED_CLIENT = new MemcachedClient(
AddrUtil.getAddresses("localhost1:11211 localhost2:11211"));
} catch (Exception e) {
System.err.println("Cannot init MEMCACHED Memcached Client");
}
}
public static void set(String key, String value,Integer expireTime ) throws Exception {
MEMCACHED_CLIENT.set(key, expireTime, value);
}
public static String get(String key) throws Exception {
Object value = MEMCACHED_CLIENT.get(key);
if (null != value)
return value.toString();
return null;
}
}
Monitor
我們可以經由過程以下簡略的敕令得知Memcached的運轉狀態,以此為擴大可以完成簡略的Memcached檢測shell。
watch "echo stats | nc 127.0.0.1 11211"
Conclusion
Memcached現實應用上去簡略易用,各個平台下面也有響應的Client.
但有時高並發能夠會湧現Timeout的情形,招致緩沖沒方法射中的情形,詳細緣由還須要進一步驟查。
Memcahed的作者比來用Go說話去寫了groupcache很值得存眷。