定时任务失败重试时间延长记录

背景

最近有一个业务,大致如下:

客户 平台 资方 发起签约 请求发起签约接口 返回签约方案 客户是否签约完成,平台并不知道 轮训客户签约结果 签约完成,执行其他操作 客户 平台 资方

问题点 : 平台不知道客户什么时候完成签约。目前采用定时任务几分钟轮询一次,但若是每次定时任务执行都去查询资方,就有些浪费资源了。因为客户发起签约后,可能并没有签约。

简单解决方案

  1. 通过 redis 记录每个客户签约结果的 查询次数 queryCount,查询失败次数 errorCount,失败次数阶加和 errorCountSum(本想通过 2的N次幂方式,比较下来这种指数增长太过迅速)。
  2. 比对当前查询次数 queryCount 是否大于 失败次数阶加和 errorCountSum。 大于则执行,否则不执行查询资方逻辑。
  3. 实现了 失败 n 次,定时任务 n 次不执行查询资方的效果。
  4. 当然,客户 重新发起 签约的时候,会重新计数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值