• 技术文章 >数据库 >Redis

    redis性能测试与客户端连接详解

    尚2019-11-28 16:37:41转载760

    Redis 性能测试 (推荐:redis入门教程

    语法

    redis-benchmark [option] [option value]

    实例

    实例一

    以下实例同时执行 1000 个请求来检测性能:

    $   redis-benchmark -n 1000  -q

    ps: 本地 docker 暂时不支持命令。结果跳过,请自行测试。

    redis:6379> benchmark -n 1000 -q
    (error) ERR unknown command 'benchmark'

    实例二

    主机为 127.0.0.1,端口号为 6379,执行的命令为 set, lpush,请求数为 1000,通过 -q 参数让结果只显示每秒执行的请求数。

    $ redis-benchmark -h 127.0.0.1 -p 6379 -t set,lpush -n 1000 -q

    性能测试参数

    序号选项描述默认值
    1-h指定服务器主机名127.0.0.1
    2-p指定服务器端口6379
    3-s指定服务器socket
    4-c指定并发连接数50
    5-n指定请求数10000
    6-d以字节的形式指定 SET/GET 值的数据大小2
    7-k1=keep alive 0=reconnect1
    8-rSET/GET/INCR 使用随机 key, SADD 使用随机值
    9-P通过管道传输 请求1
    10-q强制退出 redis。仅显示 query/sec 值
    11–csv以 CSV 格式输出
    12-l生成循环,永久执行测试
    13-t仅运行以逗号分隔的测试命令列表。
    14-IIdle 模式。仅打开 N 个 idle 连接并等待。

    Redis 客户端连接

    Redis 通过监听一个 TCP 端口或者 Unix socket 的方式来接收来自客户端的连接,当一个连接建立后,Redis 内部会进行以下一些操作:

    首先,客户端 socket 会被设置为非阻塞模式,因为 Redis 在网络事件处理上采用的是非阻塞多路复用模型。

    然后为这个 socket 设置 TCP_NODELAY 属性,禁用 Nagle 算法

    然后创建一个可读的文件事件用于监听这个客户端 socket 的数据发送

    最大连接数

    redis:6379> config get maxclients
    1) "maxclients"
    2) "10000"

    实例

    启动时设置最大连接数为 999

    redis-server --maxclients 999

    客户端命令

    S.N.命令描述
    1CLIENT LIST返回连接到 redis 服务的客户端列表
    2CLIENT SETNAME设置当前连接的名称
    3CLIENT GETNAME获取通过 CLIENT SETNAME 命令设置的服务名称
    4CLIENT PAUSE挂起客户端连接,指定挂起的时间以毫秒计
    5CLIENT KILL关闭客户端连接

    推荐:redis视频教程

    以上就是redis性能测试与客户端连接详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除
    专题推荐:redis
    上一篇:redis底层数据结构深入介绍 下一篇:Redis缓存清理的方法

    相关文章推荐

    • redis宕机数据如何恢复• redis分布式锁如何实现原理• redis如何缓存分页数据• Redis的两种安装部署方式(图文详解)

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网