memcache原生,php客户端,java客户端的性能对比
来源:互联网 发布:广东省 人工智能 政策 编辑:程序博客网 时间:2024/06/05 08:01
硬件环境:虚拟机: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) java/php/nginx
压力机:10.32.25.46 (8 Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 内存32G) memcached/xmemcache
网格环境:千兆
软件环境: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
客户端压力工具:http_load –p 40 –s 60 java-all-url.txt
网络监控工具:nload / iptraf / top
测试数据:key值范围 50-100b;value值范围1b-1k;
测试结果:
原生
php_memcached
java_xmemcache
操作
cpu(id%)
qps(次/秒)
响应时间(s)
cpu(id%)
qps(次/秒)
响应时间(s)
cpu(id%)
qps(次/秒)
响应时间(s)
读
84
78512
0.000018
7
9677
0.32
23
12112
0.61
写
76
54183
0.000012
11
9567
0.32
26
12191
0.6
混合1:9
73
149743
0.000006
6
9587
0.32
30
13133
0.63
测试结论:
1、 原生状态下的memcache可以支撑每秒钟14万的混合读写,压力增加后网卡成为瓶径,每秒钟传输达到120M/s,达到上限;
2、 通过Php的memcached客户端读写memcache,每秒钟处理请求在9500个左右,此时php+nginx服务器成为瓶径,cpu使用率超过80%,达到上限;
3、 通过java的xcmemcache客户端读写memcache,每秒钟处理请求在13000个左右,此时java服务器成为瓶径,cpu使用率超过80%,达到上限;
4、 客户端中除了上述两个,还有php的memcache和java的spymemcache也进行了尝试性测试,但稳定性较差,失败率很高,所以没有进行详细测试,如有需要再进行;
- memcache原生,php客户端,java客户端的性能对比
- Memcache的三种Java客户端的对比和选择
- Memcache的三种Java客户端的对比和选择
- Memcache Java 客户端使用
- Memcache Java 客户端使用
- 基于PHP客户端的TokyoTyrant(TCH, TCB, TCT), Memcache, Mysql性能测试
- 基于PHP客户端的TokyoTyrant(TCH, TCB, TCT), Memcache, Mysql性能测试(测试脚本)
- MemCache的客户端优化
- 用PHP实现memcache客户端
- php memcache服务器端的安装和memcached客户端的安装。
- memcache java客户端优化历程
- memcache java客户端代码示例
- memcache -- php的memcached客户端程序源码学习
- 关于PHP客户端 memcache 和 memcahed 的选择
- elasticsearch java客户端 - 原生esClient
- Memcache客户端,随意写的
- PHP Memcached客户端memcache,memcached比较
- 用PHP实现memcache客户端(续)
- Windows XP环境下Bundler的安装和配置
- java数字转换为字符串,长度不够前面补0
- MyEclipse必须会用的快捷键
- Mac不使用时关机、睡眠、一直开机的利与弊
- prototype.js 和json.js 冲突
- memcache原生,php客户端,java客户端的性能对比
- 机房收费系统——报表
- Visual Studio统计有效代码行数
- 中文汉化vs2010下mvc4.0的智能提示
- .net 环境下 防止多用户登陆
- 使用第三方字体
- jQuery .tmpl(), .template()学习
- Oracle生成awr报告
- ArcGIS客户端开发学习笔记(五)——ArcGIS REST API基础