V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
echotpq
V2EX  ›  Redis

双核 cpu 及以上, redis 性能是不是都一样了?

  •  
  •   echotpq · 2019-12-23 14:25:56 +08:00 · 14326 次点击
    这是一个创建于 1804 天前的主题,其中的信息可能已经有所发展或是发生改变。

    redis 是单线程的,所以,是不是阿里云 2 核及以上的 ECS,搭建出来的 redis 性能都是一样的?

    22 条回复    2019-12-24 10:37:15 +08:00
    phantomzz
        1
    phantomzz  
       2019-12-23 15:29:20 +08:00
    光讨论 CPU 影响因素的话
    我个人认为: 是的
    Rekkles
        2
    Rekkles  
       2019-12-23 15:29:55 +08:00
    跟主频和内存相关
    fancy111
        3
    fancy111  
       2019-12-23 15:32:16 +08:00
    怎么可能一样,你 CPU 也是单线程,CPU 还得处理其他进程。
    forrestshuang
        4
    forrestshuang  
       2019-12-23 15:32:40 +08:00
    不一样啊,你双核就开 2 个 redis 实例啊
    fdingiit
        5
    fdingiit  
       2019-12-23 16:18:22 +08:00
    redis 并不是真正意义上的完全单线程,例如 bgsave

    另外云服务都牵扯到 “超卖”
    sagaxu
        6
    sagaxu  
       2019-12-23 16:26:28 +08:00 via Android
    redis5 开始支持多线程了
    realpg
        7
    realpg  
       2019-12-23 16:28:32 +08:00
    redis 啥时候变成 cpu 密集应用了
    RedisMasterNode
        8
    RedisMasterNode  
       2019-12-23 16:30:58 +08:00
    一般经验应该是在多核的机器上启用多个 Redis 服务,做成 Cluster 发挥性能,楼主可以试试?
    echotpq
        9
    echotpq  
    OP
       2019-12-23 17:12:48 +08:00 via Android
    @RedisMasterNode
    这个想法不错
    echotpq
        10
    echotpq  
    OP
       2019-12-23 17:13:19 +08:00 via Android
    @fancy111 我指的是双核 cpu 及以上,仅作为 redis 服务器
    echotpq
        11
    echotpq  
    OP
       2019-12-23 17:13:59 +08:00 via Android
    @phantomzz 对的,只讨论 cpu
    Raymon111111
        12
    Raymon111111  
       2019-12-23 17:16:46 +08:00
    操作系统也要干活,而且 redis 也有不少后台线程。
    fancy111
        13
    fancy111  
       2019-12-23 17:17:55 +08:00
    @echotpq 那没多少区别,redis 是有瓶颈的,关键在内存速度。达到瓶颈你增加配置也没用,只能分布式。
    phantomzz
        14
    phantomzz  
       2019-12-23 17:44:53 +08:00   ❤️ 1
    我们公司的 Redis 只允许单实例;
    楼上说的多实例,小公司可以这么搞,像我们有突发流量的,一旦其中一个出现资源争抢,都会带来很大的影响。而且运维和排查难度大增。
    opengps
        15
    opengps  
       2019-12-23 17:47:47 +08:00
    主频高低会有影响,cpu 数量影响很小(如果有那就是 cpu 三级缓存等细微因素有点小差异)
    colors
        16
    colors  
       2019-12-23 18:27:35 +08:00
    只讨论 CPU 的话, 多核目前应该影响不大
    另外 redis 6 会支持多线程, 可以看下 benchmark,多核情况下应该会提升不少性能
    crclz
        17
    crclz  
       2019-12-23 20:34:24 +08:00
    可以去试一下,当跑分程序 CPU 满载时,redis 的 CPU 开销很小。
    XiaoxiaoPu
        18
    XiaoxiaoPu  
       2019-12-23 20:43:27 +08:00
    看具体场景吧,请求量很大的情况下,网卡中断的开销也不可忽略
    netty
        19
    netty  
       2019-12-23 20:43:55 +08:00 via Android
    @phantomzz 应该反过来吧,小公司才不会在运维上投入那么大。像一些大的互联网公司,集群多实例是很常见的。业务系统一旦庞大了,监控、告警、配置等都可自动化,反过来降低了成本
    judeng
        20
    judeng  
       2019-12-23 20:45:21 +08:00   ❤️ 1
    推荐 4 核
    2 系列就有线程了,但一般用在 oaf 中,用出不大,2 核足够
    4 系列后有了 unlink,这个已经很实用了,4 核可以满足
    6 系列要上多线程,4 核刚需
    phantomzz
        21
    phantomzz  
       2019-12-23 21:13:12 +08:00
    @netty 单实例指的是一台机器上只运行一个 redis 实例,不允许一台机器运行多个 redis 进程。
    areless
        22
    areless  
       2019-12-24 10:37:15 +08:00 via Android
    软路由器跟普通路由器的区别,其实这玩意很适合做成硬件。执行功能单一。所以能独立运行的 GPU 更适合做一系列数据库的硬件构架~~~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2658 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:10 · PVG 19:10 · LAX 03:10 · JFK 06:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.