美文网首页Java web
数据定时超时策略

数据定时超时策略

作者: 小丸子的呆地 | 来源:发表于2021-06-25 02:34 被阅读0次

场景:
某些资源在达到某一时间点后需要将其状态置为超时
方案:

  1. 资源数据入库后,将其过期时间及主键id设置到redis,
    使用数据类型sortSet,主键id为value,过期时间为score
  2. 起定时任务,拿sortSet的第一个元素,判断其是否过期,
    如果过期,则对其主键id做过期处理,并删除在sortSet中的改元素
    再次取sortSet第一个元素,判断其是否过期。。。
    如果没有过期,则本次定时任务执行结束
  3. 轮询定时任务,定时任务的执行频率,则为过期时间的精度

优点:

  1. 不用遍历数据库
  2. 只需要判断一个元素就能确定,本次是否有需要过期的ID

缺点:

  1. 依赖redis的稳定性
  2. 数据过多,会导致这个set数据量很大
  3. 数据过期时间分布不均,会导致过期任务不平滑
  4. 定时任务执行过程中,程序执行耗时无法计算,可能会影响精度。

相关文章

  • 数据定时超时策略

    场景:某些资源在达到某一时间点后需要将其状态置为超时方案: 资源数据入库后,将其过期时间及主键id设置到redis...

  • 分布式定时任务调度框架

    一、前言 在开发中会有定时任务的场景需要用到定时任务,如订单超时需要自动取消订单、数据需定时备份、定时短信邮件的发...

  • Polly 故障处理(二): 熔断策略

    熔断策略(Circuit-breaker) 如果调用某个目标服务出现过多超时、异常等情况,可以采取一定时间内熔断该...

  • lwip中定时器工作原理

    1、数据结构表示 超时定时器是按单链表结构进行组织的,链表按超时的时间从小到大进行排序,list的头指向超...

  • redis 过期键的删除策略

    redis 删除过期键策略  定时删除:   优点:定时删除策略对内存是最友好的:通过定时器,定时删除策略可以保证...

  • 面试问题

    问题List 1、消息超时怎么办—定时器2、如果定时器设置得很长,会有什么后果?3、数据库4、chr性能考虑5、c...

  • Node.js结合RabbitMQ延迟队列实现定时任务

    实际业务中对于定时任务的需求是不可避免的,例如,订单超时自动取消、每天定时拉取数据等,在Node.js中系统层面提...

  • Okio 超时机制

    Okio中有同步超时和异步超时。 同步超时Timeout类 Timeout类提供了两个互补的控制机制来定义超时策略...

  • setTimeout & setInterval

    setTimeout(function,time)——定时器,定时器超时时执行代码。clearTimeout(fu...

  • 前嗅ForeSpider中数据采集界面介绍

    一、运行设置 数据采集前的设置,包括采集速度、采集策略、任务装载、网络超时、HTTP设置、加载设置、任务模式、任务...

网友评论

    本文标题:数据定时超时策略

    本文链接:https://www.haomeiwen.com/subject/qljsyltx.html