V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
dtgxx
V2EX  ›  Redis

redis 百万级的 key 性能如何

  •  
  •   dtgxx · Apr 12, 2022 · 6664 views
    This topic created in 1477 days ago, the information mentioned may be changed or developed.
    单节点,redis 存储 100w 个 key ,使用 get(key)性能如何? 目前没环境测,大佬们有试过的吗?
    键的长度大致是 my_redis_key 这么长,性能 4 核 8g
    Supplement 1  ·  Apr 12, 2022
    感谢各位,刚忙完测了一下,100w 个 key 而已,瞬出结果,性能可观。
    16 replies    2022-04-13 09:20:05 +08:00
    bootvue
        1
    bootvue  
       Apr 12, 2022
    redis cluster
    passer9527
        2
    passer9527  
       Apr 12, 2022 via iPhone   ❤️ 1
    性能完全没问题,平均耗时 3ms ,我们应千万级 key 数量都没问题
    chengz
        3
    chengz  
       Apr 12, 2022   ❤️ 1
    redis 随机存取都是根据 key 取 hash ,和存储数量没关系,跟键长关系也不大
    主要消耗在网络 IO
    night98
        4
    night98  
       Apr 12, 2022   ❤️ 1
    看你 value 大不大,正常存一个 id 的话妥妥的
    MarkLazy
        5
    MarkLazy  
       Apr 12, 2022
    我之前有个服务,redis 是瓶颈,15 主 15 从 的 cluster ,最后服务整体才跑到 8w qps ,不知道怎么搞的;当时排查了也不存在热 key ,redis 集群也没有慢日志;后面看调用链和日志,发现服务从 jedis 连接池里拿不到连接,一直等可用的连接,导致 qps 上不去,可是连接池已经设置的很大了
    haah
        6
    haah  
       Apr 12, 2022
    “单节点,redis 存储 100w 个 key ,使用 get(key)性能如何?”,连 CPU 的频率条件都没么?
    haah
        7
    haah  
       Apr 12, 2022
    要是用“奔腾”和“酷睿”比,性能肯定不一样!
    fewok
        8
    fewok  
       Apr 12, 2022
    你这是 redis 的问题,这直接是 CPU 的问题啊。要不上深蓝
    tramm
        9
    tramm  
       Apr 12, 2022
    没影响, List, Hash, Set 这样的 value 里面查才会慢
    iyaozhen
        10
    iyaozhen  
       Apr 12, 2022
    我记得 key 的长度也有关系,不能太长
    abear
        11
    abear  
       Apr 12, 2022
    请教下,3 楼和 10 楼的问题,有没有大哥给个准信,键长到底关系大不大
    Jooooooooo
        12
    Jooooooooo  
       Apr 12, 2022
    和 key 多少基本无关.


    @abear value 太大的危害是 io 可能会称为瓶颈
    falsemask
        13
    falsemask  
       Apr 12, 2022   ❤️ 1
    @abear https://stackoverflow.com/questions/6320739/does-name-length-impact-performance-in-redis 和 key 长度基本无关,虽然这个测试是十年前的,但是我觉得依然有参考价值
    rrfeng
        14
    rrfeng  
       Apr 12, 2022 via Android
    这玩意看单核频率,key 数不影响性能。但是 如果 value 太大高并发下可能把网络带宽打满……曾经吃过这个亏
    gabon
        15
    gabon  
       Apr 12, 2022 via iPhone
    redis get 命令时间复杂度 O(1),只要你的内存和网卡扛得住,且不超过 2^32 次方个 key ,应该都没什么问题。
    aptupdate
        16
    aptupdate  
       Apr 13, 2022
    洒洒水啦
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5815 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 84ms · UTC 03:20 · PVG 11:20 · LAX 20:20 · JFK 23:20
    ♥ Do have faith in what you're doing.