memcache原生性能测试
硬件环境: 虚拟机:10.32.25.111(16 Intel(R) Xeon(R) CPU E5645 @ 2.40GHz 内存16G) 物理机:10.32.25.45 (8 Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 内存32G) 压力机:10.32.25.
·
硬件环境: 虚拟机:10.32.25.111(16 Intel(R) Xeon(R) CPU E5645 @ 2.40GHz 内存16G)
物理机:10.32.25.45 (8 Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 内存32G)
压力机:10.32.25.46 (8 Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 内存32G)
网格环境:千兆
软件环境:memcached -d -p 11211 -u memcached -m 4096 -c 20000 -P /var/run/memcached/memcached.pid
测试工具:压力工具:./memaslap -s 10.32.25.45:11211 -T 8 -c 400 -F /usr/local/bin/memslap.cnf -x 10000000
网络监控:nload / iptraf / top
测试方法:1、key为固定值100b;value设三个等级1b-1k;1K-10K;10K-50K;
2、每轮测试前重启服务清空前一轮数据
3、单独读/写采用固定并发数,主要验证虚拟机与物理机的性能区别和最佳处理数据体积
混合读写不断增加并发数,主要验证memcahce最大处理能力
4、采用原生的tcp连接方式,不使用任何客户端
场景一(虚拟机):单独读(1千万数据,16并发,key=100b,value=1b-1k;1k-10k;10k-50k)
单独写(1千万数据,16并发,key=100b,value=1b-1k;1k-10k;10k-50k)
混合读写(9:1)(1千万数据,50,100,200,400,600并发,key=100b;value=1b-1k;1k-10k)
场景二(物理机):单独读(1千万数据,16并发,key=100b,value=1b-1k;1k-10k;10k-50k)
单独写(1千万数据,16并发,key=100b,value=1b-1k;1k-10k;10k-50k)
混合读写(9:1)(1千万数据,50,100,200,400,600并发,key=100b;value=1b-1k;1k-10k)
测试结论:
1,memcache在硬件设备上,虚拟机和物理机的性能区别不大;
2,memcache的最佳处理数据体积为10k以下,可以达到每秒10万次以上,数据越小处理能力越强;
3,超过10k的文件,处理能力下降的主要原因是,千兆网卡达到峰值,受限于网络传输的瓶径,压测过程网络传输为120M/s;
3,超过10k的文件,不但处理能力弱,而且命中率会下降;
注:由于确定为网络原因,计划绑定双网卡,跟运维商量后确定这种场景在实际应用中是不存在的,memcache服务器不可能绑定双网卡,所以取消此次尝试。
更多推荐
已为社区贡献3条内容
所有评论(0)