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

求教, 24 小时过期删除思路

  •  1
     
  •   abc0123xyz · 2022-11-04 16:56:06 +08:00 · 2654 次点击
    这是一个创建于 757 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题 类似于这个需求,放在 redis 中 https://www.zhihu.com/question/58976317

    5 条回复    2022-11-05 09:53:18 +08:00
    sun522198558
        1
    sun522198558  
       2022-11-04 17:07:19 +08:00 via iPhone
    Zrangebyscore 可以实现
    fds
        2
    fds  
       2022-11-04 17:16:00 +08:00   ❤️ 1
    我觉得属于需求不对。一般交易系统里不可能删除商品,最多是隐藏掉。所以加个 hide_after 字段就行,后端、前端都可以根据查询时间过滤掉。
    leeraya
        3
    leeraya  
       2022-11-04 17:39:06 +08:00   ❤️ 3
    表新增一个过期字段 expired_at ,这条记录入库的时候把 24h 之后的时间赋值给它。查询时根据过期时间过滤。这样已过期的数据不会返回给前端,但是数据库还能保留这一行数据。
    qwertyegg
        4
    qwertyegg  
       2022-11-05 01:51:07 +08:00
    卡夫卡 log retention
    hopingtop
        5
    hopingtop  
       2022-11-05 09:53:18 +08:00
    如果为了用某个东西,而去迎合,设计出一些别扭的方案。容易偏,一上来就整些各种中间组件是很不好的习惯。

    最低成本的好用的方案,就是 #3 leeraya 的思路,如果觉得真有必要上 redis ,在把这些数据 Set 上去就行了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2504 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 89ms · UTC 05:01 · PVG 13:01 · LAX 21:01 · JFK 00:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.