项目-01-Redis单机情况分布式锁实现案例-测试
- **内容简介: ** 一次自以为是的性能测试.
- PS: 若文章字体偏大或者偏小,建议通过 ctrl键+鼠标滑轮 进行修改,以提升阅读效果.(带来不便,请谅解!)
Version:
- JDK : 1.8
- Redis : 6.0.9
前提须知:
注意: 性能分析基于本地计算机情况, 不同计算机不可以一概而论.
本机状况:
- OS : Windows 10 专业版
- CPU: 15 4210m 2.6Ghz
- 内存: 12G
项目部署情况:
虚拟机:
- OS : CentOS 7 64 bit
- 内存: 1.5G
Redis 以及Nginx 安装在本虚拟机中.
Redis 性能测试:
CentOS 7:
本地调用 : **redis-benchmark -t set,get -c 50 **
set 方法测试结果:
Redis 每秒 大概可以处理2w5 个set请求.
get测试结果:
Redis每秒大概可以处理2w4 个get请求.
Windows 10 测试:
set测试结果:
测试命令
redis-benchmark -h 192.168.80.132 -t set,get -c 50 -n 10000
由于受到网络IO等因素的影响,Redis 每秒可以处理2.2k条set请求
get测试结果:
测试命令
redis-benchmark -h 192.168.80.132 -t set,get -c 50 -n 10000
由于受到网络IO等因素的影响, Redis 每秒可以处理2.2k条get请求
测试Synchronized 与ReentrantLock 的性能差距:
- 前提: 保证线程请求成功.
100 个线程同时请求1次:
- Synchronized: 73.8/sec
- ReentrantLock: 67.7/sec
100个线程请求10次:
- Synchronized: 244/sec | 280/sec|292/sec
- ReentrantLock: 299/sec | 272/sec | 379/sec
100个线程请求100次:
- Synchronized: 401/sec | 431/sec
- ReentrantLock: 389/sec | 391/sec
总结:
参考:
猜你喜欢