学习redis压测

需求背景

  1. 新旧redis拆分,新redis功能、性能验证
  2. 通过redis实现信息同步,修改了同步逻辑,在redis高压情况下,同步性能是否受影响

实现命令行对redis压测

  1. 并发,请求量
  2. 业务接口压测,消耗redis性能
    其实第一反应是请求redis的接口,对其进行压测,因为比较数据http压测。现实的问题是,压测量级上去了,测试环境部署的redis也是集群,都有哨兵机制,对redis的消耗上不去。

实现持久化

  1. 特殊命令
redis-benchmark -h 127.0.0.1 -p 6379 -l -c 100 -n 10000
  • 扩充命令含义:
    在这里插入图片描述
  • 压测生效截图:
    在这亚虐菜里插入图片描述
  1. 脚本循环执行
import subprocess

def test_redis():
    args = "redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 10000"
    for i in range(10000):
        i = i + 1
        if i >= 10000:
            p = subprocess.Popen(args=args, shell=True, stdout=subprocess.PIPE)
            for line in iter(p.stdout.readline, 'b'):
                if line is not None or line.strip() != '':
                    print(line)

def main():
    test_redis()

if __name__ == '__main__':
    main()

  1. 解决问题思路
  • 如何开启持久化
  • 如何打印命令行结果
  • 如何关注指标

校验压测生效,机器性能

  1. 命令行Top观察
    在这里插入图片描述

  2. 运维对机器有监控
    在这里插入图片描述

这个版本的redis支持多核,我压测过程中发现redis-benchmark占的CPU核跑满了,现在用3台机器压,ops能到14万,redis-server进程跑满6个core

  1. 关注业务功能
    redis高压情况下,读写操作数据库生效,更新redis设置生效。
  2. 扩展redis命令:

学习地址:http://redisdoc.com

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值