XMemcached Vs. Spymemcached 2th(最新0.6测试结果)
程序员文章站
2022-03-01 14:32:38
...
测试1:开N个线程读写删各10000次,key是String,Value是Integer,数据单位皆为TPS
线程数 | 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下的测试数据等晚上回家补上。
下一篇: word文档怎么设置分页以及怎么取消分页