XMemcached Vs. Spymemcached 2th(最新0.6測試結果)
Posted on 2009-03-06 12:36 dennis 閱讀(2039) 評論(0) 編輯 收藏 所屬分類: java 、my open-source測試1:開N個線程讀寫刪各10000次,key是String,Value是Integer,數據單位皆為TPS


觀察下結果,明顯的一點是xmemcached的get比之spyememcached快得多,考慮到memcached是作為緩存使用,這一點很重要。在set、delete上面仍然比spymemcached稍有不如,但是差距已經很小。
測試2:開N個線程讀寫各100次,key是String,Value是100個元素的map(map的key和value分別是String和一個自定義類NameClass),memcached內存加大,防止lru起作用。

觀察數據結果,難以理解的是spymemcached在寫集合方面竟然如此低效,通過jprofiler觀察兩者的CPU占用,最大頭的都是序列化自定義對象;不過我昨天在ubuntu下開發xmemcached的時候隨手測過,spymemcached寫集合并沒有在windows下這么慢。
以上測試數據使用的memcached是2.2版本,xmemcached是0.6版本,系統是windows xp,AMD雙核2G內存,memcached是跑在局域網內的服務器上,版本是1.2.2。linux下的測試數據等晚上回家補上。
線程數 | set | get | delete |
|||
xmemcached | spymemcached | xmemcached | spymemcached |
xmemcached | spymemcached |
|
1 | 3368 | 3047 | 3422 | 3232 | 3787 | 3404 |
10 | 12307 | 11742 | 15274 | 12623 | 13473 | 13473 |
50 | 22115 | 23021 | 30769 | 22630 | 24483 | 23222 |
100 | 22448 | 25467 | 32569 | 24105 | 25538 | 28119 |
200 | 24187 | 26165 | 35320 | 21379 | 26683 | 28181 |
500 | 24623 | 28810 | 36955 | 14328 | 27609 | 29789 |


觀察下結果,明顯的一點是xmemcached的get比之spyememcached快得多,考慮到memcached是作為緩存使用,這一點很重要。在set、delete上面仍然比spymemcached稍有不如,但是差距已經很小。
測試2:開N個線程讀寫各100次,key是String,Value是100個元素的map(map的key和value分別是String和一個自定義類NameClass),memcached內存加大,防止lru起作用。
線程數 | set | get | ||
xmemcached | spymemcached | xmemcached | spymemcached |
|
1 | 492 | 377 | 581 | 531 |
10 | 1362 | 84 | 831 | 753 |
30 | 1536 | 66 | 1015 | 872 |
50 | 1608 | 68 | 1126 | 1084 |
100 | 1576 | 67 | 989 | 1347 |


觀察數據結果,難以理解的是spymemcached在寫集合方面竟然如此低效,通過jprofiler觀察兩者的CPU占用,最大頭的都是序列化自定義對象;不過我昨天在ubuntu下開發xmemcached的時候隨手測過,spymemcached寫集合并沒有在windows下這么慢。
以上測試數據使用的memcached是2.2版本,xmemcached是0.6版本,系統是windows xp,AMD雙核2G內存,memcached是跑在局域網內的服務器上,版本是1.2.2。linux下的測試數據等晚上回家補上。