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

请问 Python 操作 Redis 写入数据每秒 5W 算正常么?

  •  
  •   Phishion · 2021-10-06 22:01:50 +08:00 · 2292 次点击
    这是一个创建于 1144 天前的主题,其中的信息可能已经有所发展或是发生改变。

    代码如下,使用了 pipeline,10W 数据执行下来要 2s,这个算是正常速度么?请问还有啥跑更快的办法么?

    
    from datetime import datetime
    from redis import StrictRedis
    redis = StrictRedis(host='redis', port=6379, db=0)
    
    def test_redis(count):
        pipeline = redis.pipeline()
        process_start = datetime.now().timestamp()
        for value in range(1, count):
            user_key = 'user:id:' + str(value)
            pipeline.set(user_key, 'bar')
        pipeline.execute()
        process_elapsed = round(datetime.now().timestamp() - process_start, 2)
        print("\nDone ({}s).\n".format(process_elapsed))
        
    test_redis(100000)
    
    8 条回复    2021-10-07 11:18:15 +08:00
    srx1982
        1
    srx1982  
       2021-10-06 23:02:13 +08:00
    换个解释器试试
    superrichman
        2
    superrichman  
       2021-10-06 23:02:25 +08:00   ❤️ 1
    Done (0.96s).
    你可能需要内存超频 /doge
    Phishion
        3
    Phishion  
    OP
       2021-10-06 23:10:59 +08:00
    @superrichman 感谢测试,我用的 VPS, 只能给啥用啥,你这个是挺快的
    youngce
        4
    youngce  
       2021-10-06 23:22:24 +08:00   ❤️ 1
    1.24s

    来自普通办公笔记本
    Phishion
        5
    Phishion  
    OP
       2021-10-06 23:43:38 +08:00
    @youngce 谢谢测试,可能是某云的 VPS 内存性能实在不行,也可能是我 Redis 跑在 Docker 上的原因(我没测试是不是有关联)
    notyss
        6
    notyss  
       2021-10-07 05:36:19 +08:00
    你是想测试 redis 还是 python 还是 python 的 redis library
    zhchyu999
        7
    zhchyu999  
       2021-10-07 10:18:18 +08:00
    测试下 redis 的 redis-benchmark 测试下 redis 的性能,看看瓶颈在哪里
    Phishion
        8
    Phishion  
    OP
       2021-10-07 11:18:15 +08:00
    @notyss 我就想测试一下在项目中实际的写入速度,脱离 Python 没啥意义
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   924 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:20 · PVG 05:20 · LAX 13:20 · JFK 16:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.