Redis IO多线程的简要测试结果


摘要

最近想简单确认一下IO多线程的对吞吐量的提升情况.
正好手头有鲲鹏的机器, 所以想直接进行一下验证
顺便用一下4216 进行一下对比. 发现 在CPU核心比较多的情况下 8个IO线程吞吐量能够翻一番.
但是部分命令在4-8线程增加时 差异并不是特别明显. silver 4216 低价位的intelCPU比鲲鹏920的 吞吐量要高一些, 单没有搞多少.
纯粹压测, 看不太出来绑核与不绑核的差异.

测试命令

./redis-benchmark -h 127.0.0.1 -p 6376 -n 100000 -c 8000 -d 256 --threads 1
# 注意我选择 10万个keys 8000个client 简直大小选择 256字节.
# 注意默认大小是 3个字节, 数值会比较好看,我想把简直设置大一些会好一点
cat 6376_1threads.txt | grep -E "requests per second|====="
通过这个命令进行简要分析出具结果

测试方式

鲲鹏 920 64核心 两路服务器
2.6Ghz 128Core的服务器上面
使用 1 2 4 8 四种线程数量跑四遍 压测过程中使用 top -Hp的方式查看CPU的使用情况:
比如发现某个进程
13276 root 20 0 2278756 1.2g 3080 R 99.7 0.1 1:01.29 io_thd_1
13271 root 20 0 2278756 1.2g 3080 R 99.0 0.1 1:07.60 redis-server
这是两个线程时的监控情况.
出现CPU 高时 主要是执行LGANGE的测试.. GET和SET不会到达这么搞的占用. 如果是四个线程会出现如下的情况:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
35666 root 20 0 1725812 954204 3052 R 99.9 0.1 0:21.90 io_thd_1
35667 root 20 0 1725812 954204 3052 R 99.9 0.1 0:21.89 io_thd_2
35668 root 20 0 1725812 954204 3052 R 99.9 0.1 0:21.89 io_thd_3
35661 root 20 0 1725812 954204 3052 R 99.7 0.1 0:27.58 redis-server
35663 root 20 0 1725812 954204 3052 S 0.0 0.1 0:00.00 bio_close_file
35664 root 20 0 1725812 954204 3052 S 0.0 0.1 0:00.00 bio_aof_fsync
35665 root 20 0 1725812 954204 3052 S 0.0 0.1 0:00.00 bio_lazy_free
35669 root 20 0 1725812 954204 3052 S 0.0 0.1 0:00.25 jemalloc_bg_thd
37399 root 20 0 1725812 954204 3052 S 0.0 0.1 0:00.00 jemalloc_bg_thd
37401 root 20 0 1725812 954204 3052 S 0.0 0.1 0:00.00 jemalloc_bg_thd
37402 root 20 0 1725812 954204 3052 S 0.0 0.1 0:00.00 jemalloc_bg_thd

测试结果

线程数 PING SET GET INCR LPUSH RPUSH RPOP SADD HSET LRANGE_600 MSET
1 58719 58139 58788 61614 57142 58207 58343 61199 60024 2257 42211
2 75585 90497 74738 90991 74682 75301 75131 92421 90744 4211 53792
4 126582 95328 96246 125470 94339 96432 95693 96339 95510 4559 64432
8 129701 97751 129198 129366 97751 97656 97751 129701 129198 4434 65445


对比silver 4216与 6150的绑核处理

线程数 PING SET GET INCR LPUSH SADD HSET LRANGE_600 MSET
鲲鹏920 8线程 129701 97751 129198 129366 97751 129701 129198 4434 65445
4216 8线程 130548 130718 130208 130208 130378 129870 130548 6069 78616
4216 8线程 绑核 130548 129701 130208 130718 130039 129701 130378 6826 78125


4216 的绑核处理

server_cpulist 0-8
bio_cpulist 9-10
aof_rewrite_cpulist 12-15
bgsave_cpulist 16-17

Redis IO多线程的简要测试结果的更多相关文章

  1. centos8平台:redis6配置启用io多线程(redis6.0.1)

    一,linux平台上redis6的安装 请参见这一篇: https://www.cnblogs.com/architectforest/p/12830056.html 说明:刘宏缔的架构森林是一个专注 ...

  2. 转载: 一、linux cpu、内存、IO、网络的测试工具

    来源地址: http://blog.csdn.net/wenwenxiong/article/details/77197997 记录一下 以后好找.. 一.linux cpu.内存.IO.网络的测试工 ...

  3. [Redis] redis在centos下安装测试

    下载软件,使用命令wget xxx,参数:url 例如: wget http://download.redis.io/releases/redis-3.0.0.tar.gz 解压缩,使用命令tar,参 ...

  4. 基于Redis缓存的Session共享测试(转)

    本机ip为192.168.1.101 1.准备测试环境 两个Tomcat 在Eclipse中新建2个Servers,指定对应的Tomcat,端口号错开. Tomcat1(18005.18080.180 ...

  5. Nginx+MySQL+PHP+Redis多机部署(测试发布discuz论坛)

    链接:LNMP+Redis单机部署 1.实战多机部署环境 nginx服务器: 192.168.1.3 php服务器:    192.168.1.4 mysql服务器: 192.168.1.10 red ...

  6. redis和memcached有什么区别?redis的线程模型是什么?为什么单线程的redis比多线程的memcached效率要高得多(为什么redis是单线程的但是还可以支撑高并发)?

    1.redis和memcached有什么区别? 这个事儿吧,你可以比较出N多个区别来,但是我还是采取redis作者给出的几个比较吧 1)Redis支持服务器端的数据操作:Redis相比Memcache ...

  7. Dubbo入门到精通学习笔记(十五):Redis集群的安装(Redis3+CentOS)、Redis集群的高可用测试(含Jedis客户端的使用)、Redis集群的扩展测试

    文章目录 Redis集群的安装(Redis3+CentOS) 参考文档 Redis 集群介绍.特性.规范等(可看提供的参考文档+视频解说) Redis 集群的安装(Redis3.0.3 + CentO ...

  8. [原]Redis主从复制各种环境下测试

    Redis 主从复制各种环境下测试 测试环境: Linux ubuntu 3.11.0-12-generic 2GB Mem 1 core of Intel(R) Core(TM) i5-3470 C ...

  9. Redis集群的使用测试(Jedis客户端的使用)

    Redis集群的使用测试(Jedis客户端的使用)1.Jedis客户端建议升级到最新版(当前为2.7.3),这样对3.0.x集群有比较好的支持.https://github.com/xetorthio ...

  10. SQLServer表变量对IO及内存影响测试

    原文:SQLServer表变量对IO及内存影响测试 1. 测试创建表变量对IO的影响 测试创建表变量前后,tempdb的空间大小,目前使用sp_spaceused得到大小,也可以使用视图sys.dm_ ...

随机推荐

  1. EDS从小白到专家丨打造数据交换的六边形卫士,让你的数据你做主

    本文分享自华为云社区<[EDS从小白到专家]第4期:打造数据交换的六边形卫士,让你的数据你做主>,作者: 开天aPaaS小助手 . 你还在担心数据共享后一旦"失控"将爆 ...

  2. Python压缩JS文件,重点是 slimit

    摘要:Python Web程序员必看系列,学习如何压缩 JS 代码. 本文分享自华为云社区<Python压缩JS文件,PythonWeb程序员必看系列,重点是 slimit>,作者: 梦想 ...

  3. 华为云 UCS (On-Premises):运行在您本地数据中心的CCE集群

    摘要:华为云分布式云原生UCS服务,是面向分布式云场景下的新一代云原生产品,提供UCS (Huawei Cloud).UCS (Partner Cloud).UCS (Multi-Cloud).UCS ...

  4. 海量监控数据处理如何做,看华为云SRE案例分享

    摘要:openGemini的设计和优化都是根据时序数据特点而来,在面对海量运维监控数据处理需求时,openGemini显然更加有针对性. IT运维诞生于最早的信息化时代.在信息化时代,企业的信息化系统 ...

  5. 聊聊数仓中TPCD-DS&TPC-H与查询性能的那些事儿

    摘要:详细讲述使用GaussDB(DWS)时,如何使用TPC-DS/TPC-H等标准数据模型,获取DWS的查询性能数据. 本文分享自华为云社区<GaussDB(DWS) <DWS之TPCD ...

  6. 线下Meetup:在数智化转型背景下,火山引擎VeDI的大数据技术揭秘

     更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群   近日,联合火山引擎开发者社区,火山引擎数智平台(VeDI)<数智化转型背景下的火山引擎大数据技术揭秘& ...

  7. 开发调试更便捷!火山引擎 DataLeap 提供 Notebook 交互式开发体验

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 Notebook 是一种支持 REPL 模式的开发环境. 所谓「REPL」,即「读取-求值-输出」循环:输入一段代 ...

  8. 百年奥运的凌空之美,AI 云智剪背后的新算法

    奥运赛事每天都在上演冰雪奇迹,而捕捉发生瞬间,凝结最精彩.最动人的体育人文画面,让"冰之舞"."雪之舞"."速度之美"."凌空之美 ...

  9. 【HZERO】宏函数

    宏函数配置

  10. Mac 开发 | IDEA 设置 Mybatis 的XML SQL 语句提示

    1.IDEA 链接数据库 2.IDEA 设置数据库方言为链接的数据库方言 3.IDEA SQL 解析范围设置 4. 可以在mapper xml 中写select 测试了.