標籤:
原文地址:轉Java 幾個memcached 串連用戶端對比 選擇
閃出光芒
Xmemcached 1.2.6.1 released,所以更新了一下Java Memcached Client Benchmark。對比下Xmemached,Spymemcached和Java-Memcached-Client這三個開源用戶端的效能,具體的測試資訊可以看這個連結。
測試源碼:
Java代碼
- svn co http://xmemcached.googlecode.com/svn/trunk/benchmark/
測試結果:
Java代碼
- svn co http://xmemcached.googlecode.com/svn/trunk/benchmark/result
總結下測試結果,為還在選擇和考察java memcached client的朋友提供參考:
1、Java-Memcached-Client 2.5.1這個版本果然有很大改進,效能上有非常大的提升,從測試結果來看在小於100並發下有非常明顯的優勢,同時耗費資源也相對較多。但是在300並 發訪問下,Java-Memcached-Client會不斷地報錯:
Java代碼
- com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000
- com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000
- com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.90:12000
- com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000
- com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.90:12000
- com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000
並且無法正常地存取資料,而xmc和spy卻可以正常應對這一情境。因此可以看到在300並發下,Java-Memcached-Client測試的結果直接為0,因為測試無法完成。儘管我嘗試將最大串連數調整到2000,仍然是無法正常完成測試。
2、Xmemcached無論在低並發還是高並發訪問的情況下,都可以保持一個比較優秀的效能表現,從xmc和spy的對比來看,xmc的優勢相當大。
3、從使用者選擇角度來說,如果你的應用對memached的訪問負載並不高,Java-Memcached-Client是一個不錯的選擇,但是在高峰訪問的時候可能命中率會有個急劇的波動;如果你的應用訪問memached的負載較高,此時我推薦你選擇xmemcached;如果你需要非同步批量處理(future模式),可以選擇spymemcached;如果你不知道你的應用是什麼狀況,我推薦你用xmemcached,可以在任何情況下獲得一個比較好的效能表現。
[轉載]轉Java 幾個memcached 串連用戶端對比 選擇