redis实战 -- python知识散记

-- time.time()

-- row.to_dict()

-- json.dumps(row.to_dict())

复制代码
#!/usr/bin/env python

import time

def schedule_row_cache(conn,row_id, delay) : 
    conn.zadd('delay:', row_id, delay)
    conn.zadd('schedule:', row_id, time.time())


def cache_rows(conn) : 
    while not QUIT : 
        next = conn.zrange('schedule:', 0, 0, withscores=True)
        now = time.time()
        if not next or next[0][1] > now :
            time.sleep(.05)
            continue
        row_id = next[0][0]
        
        delay = conn.zscore('delay:', row_id)
        if delay <= 0 : 
            conn.zdel('delay:', row_id)
            conn.zdel('schedule:', row_id)
            conn.delete('inv:' + row_id)
        row = Inventory.get(row_id)
        conn.zadd('schedule:', row_id, now + delay)
        conn.set('inv:' + row_id, json.dumps(row.to_dict()))
复制代码

-- time.time() 需要导入time库

-- import time

 

-- row.to_dict() 

啦啦啦

posted @   limeOracle  阅读(395)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示