支付宝那种支付回调 按一定频率推送是怎么实现的?(4m,10m,10m,1h,2h,6h,15h)
資深大佬 : wuzhizuiguo 2
我的想法是, 第一次的时候直接推送(请求对方的 url) 如果成功了,那就不做其他操作. 失败了: 把推送的订单 写入 redis 的 hash 表(具体对象 )和 zset 中(主键),设置 score 值为要推送的时间,然后再加一个记录这是第几次推送的 key-value
跑一个定时器 每秒去读 zset 中 score 符合推送的订单 id(再去 hash 中获取具体数据),并删除这两个值, 然后再次请求对方的 url,返回正常状态,那么就成功了. 失败: 根据是第几次推送, 把 score 值加大,hash 表再添加对应的订单数据. 继续推送, 直到次数太多,不再推送..
请问下坛友, 这种回调按一定频率推送 一般是怎么做的?
大佬有話說 (22)