支付宝卡包券到期提醒,定时任务怎么做?
Posted Think_Higher
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了支付宝卡包券到期提醒,定时任务怎么做?相关的知识,希望对你有一定的参考价值。
文章目录
背景介绍
技术同学对定时任务肯定不陌生。定时任务一般用来定时批量进行业务处理。支付宝卡包券到期提醒、删除过期失效券,五福大促批量给用户发放添福红包等场景,都是通过定时任务触发来完成的。
定时任务分类
单机任务
单机定时任务毫无疑问是在单台机器上运行的定时任务。在业务量级不大,没有进行分库分表时,往往单机定时任务即可满足业务需求。
从复杂度上来说,单机定时任务又可分为简单的定时调度和定时调度+批处理两种。
1、定时调度
在Spring中可以通过**@Scheduled** 来启用定时任务。触发的方式有两种,分别是:cron 表达式和 fixedRated类配置参数。常用的案例
// cro
深度学习核心技术精讲100篇(五十五)-深度解读分布式定时任务框架
前言
我们先思考下面几个业务场景的解决方案:
-
支付系统每天凌晨1点跑批,进行一天清算,每月1号进行上个月清算
-
电商整点抢购,商品价格8点整开始优惠
-
12306购票系统,超过30分钟没有成功支付订单的,进行回收处理
-
商品成功发货后,需要向客户发送短信提醒
❝类似的业务场景非常多,我们怎么解决?
❞
很多业务场景需要我们某一特定的时刻去做某件任务,定时任务解决的就是这种业务场景。一般来说,系统可以使用消息传递代替部分定时任务,两者有很多相似之处,可以相互替换场景。
如,上面发货成功发短信通知客户的业务场景,我们可以在发货成功后发送MQ消息到队列,然后去消费mq消息,发送短信。
但在某些场景下不能互换:
-
时间驱动/事件驱动:内部系统一般可以通过时间来驱动,但涉及到外部系统,则只能使用时间驱动。如怕取外部网站价格,每小时爬一次
-
批量处理/逐条处理:批量处理堆积的数据更加高效,在不需要实时性的情况下比消息中间件更有优势。而且有的业务逻辑只能批量处理。如移动每个月结算我们的话费
-
实时性/非实时性:消息中间件能够做到实时处理数据,但是有些情况下并不需要实时,比如:vip升级
-
系统内部/系统解耦:定时任务调度一般是在系统内部,而消息中间件可用于两个系统间
Java 有哪些定时任
以上是关于支付宝卡包券到期提醒,定时任务怎么做?的主要内容,如果未能解决你的问题,请参考以下文章
Java项目ssh如何实现到了规定时间自动提醒,比如:房租到期自动提醒,这些功能如何去实现?
飞书机器人通过 node-schedule 定时任务做一些打卡提醒和一些热搜新闻推荐