V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
nutting
V2EX  ›  Linux

redis 性能问题

  •  
  •   nutting · 2020-12-11 09:32:41 +08:00 · 3702 次点击
    这是一个创建于 1441 天前的主题,其中的信息可能已经有所发展或是发生改变。
    默认编译,默认参数启动,用自带的 benchmark 测试
    i5 4590+ssd 750evo,每秒 20w 次
    i5 7400+机械,每秒 14w 次
    其他的 amd r3 3200,r5 3600, 第八代 i5 笔记本,都是一般说的每秒 8w 次

    好像 8w 次挺正常,为啥第一个平台表现那么好呢,那台机器很烂啊,h81 主板,15 年 2000 块装的,i5 4590 后来换的
    13 条回复    2020-12-11 21:21:22 +08:00
    614457662
        1
    614457662  
       2020-12-11 09:36:23 +08:00
    ssd 的原因?
    nutting
        2
    nutting  
    OP
       2020-12-11 09:41:00 +08:00
    @614457662 按照前面两个比倒是可能。但是其他 cpu 的也是固态,性能就上不去。
    sujin190
        3
    sujin190  
       2020-12-11 09:49:13 +08:00
    全内存操作和硬盘也没啥关系吧,和 cpu 主频、缓存大小、内存主频延时关系很大,笔记本的话虽然 cpu 瞬时主频很高,但是受散热和功耗限制,维持不了多长时间
    nano91
        4
    nano91  
       2020-12-11 09:49:48 +08:00
    关键不是在于内存吗
    guonaihong
        5
    guonaihong  
       2020-12-11 09:56:22 +08:00
    你可以写个死循环,运行进程,然后到 /proc/cpuinfo 观察每台机器的频率最大值。

    cat /proc/cpuinfo |grep 'cpu MHz'

    如果性能和你的 cpu 频率不成正比,可以和 redis 实现有关系。
    earther01
        6
    earther01  
       2020-12-11 10:13:13 +08:00
    @sujin190 跟硬盘速度也有点关系, 假设内存占用达到 swappiness 配置阈值,就会触发 swap,这时候就要看硬盘速度了
    Vegetable
        7
    Vegetable  
       2020-12-11 10:14:13 +08:00
    imac 2018 i5/8g

    87336.24 requests per second

    8w 多的确挺正常
    Vegetable
        8
    Vegetable  
       2020-12-11 10:14:35 +08:00
    *mac mini
    机型都打错了服
    laminux29
        9
    laminux29  
       2020-12-11 10:44:51 +08:00   ❤️ 2
    1.不同品牌的 SSD,性能有天壤之别。
    我不知道有多少人买固态,是按颜色选的,而不是看 iops 、顺序 io 等性能参数。某个大品牌的第一代 SSD 性能甚至和 U 盘没啥区别。反正不懂的话,选三星就对了。


    2.性能测试,至少要把
    CPU 负载图、内存负载图、硬盘性能图 3 个重要图表放出来。

    Win7 的话,前两者在任务管理器 -> 性能 -> CPU 使用率、CPU 使用记录、内存、物理内存使用记录 -> 第三者 Win + R -> perfmon /res -> 磁盘 -> 存储 -> 磁盘队列长度。
    https://imgchr.com/i/rk6Vte

    Win10,除了同上之外,在任务管理器左侧下面的磁盘位置,还要观察 读取速度与写入速度。
    https://imgchr.com/i/rk6ZfH

    Linux 稍微麻烦一些:
    top -d 1,进入后还要按 Q 键上的数字 1 。
    iostat -x -m -d 1

    屏幕录像推荐:FlashBack Pro 5 Recorder,支持 Win7 Win10,百度可以找到 D 版。压缩选择 mp4 + vbr2 次编码,最小值向左拉到最小,最大值可以考虑 20-30Mbps,文件分享推荐 google driver 或 mega,墙内推荐奶牛快传。

    Win 可以直接录像,linux 的话用 xshell 5 连接,然后对 xshell 进行录像。
    xshell 5 属于 Xmanager 5,百度搜 Xmanager 5,101210-450789-147200


    3. i5 4590 的主频比 i5 7400 稍高,但也不至于高出一倍多:
    https://ark.intel.com/content/www/us/en/ark/compare.html?productIds=97147,80815

    猜测可能是 SSD 在起作用。比如内存满了要用 ssd 或 hdd 来暂存数据,或者 redis 会临时持久化一批数据然后卡在这里了。但这些猜测都需要前文提到的图表来做数据分析。
    m2276699
        10
    m2276699  
       2020-12-11 11:24:27 +08:00
    aida 测一下内存
    duola
        11
    duola  
       2020-12-11 11:28:33 +08:00
    如果有条件,可以试着一下,买条高率的内存。
    barbery
        12
    barbery  
       2020-12-11 11:42:06 +08:00
    默认参数是有备份写硬盘的,多少时间内多少个 key 被改动过就备份 DB,估计是这个原因所以 ssd 的胜出,可以试试关了备份再试试
    speck
        13
    speck  
       2020-12-11 21:21:22 +08:00
    @barbery 正背八股文看到😂
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2680 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 00:25 · PVG 08:25 · LAX 16:25 · JFK 19:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.