像segmentfault定时任务是怎么实现的?
比如我在付费问答中提了一个问题,如下图:
等到了72小时后,将这个回答视为放弃,同时将钱退回给我。请问这个定时任务他们是怎么实现的?TKS
这个是我前几天提出的问题,怎么注册定时任务,自动回调?,我在想有没有其它思路或者解决方案!正好看着segmentfault也实现了这种定时任务,和我目前业务需求一样,就不知道他们是怎么实现的?不知道哪位大神能给点思路或者方案,谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
1.crontab类定时任务,每隔固定时间执行脚本检查所有订单比如
select * from questions where type = 付费 and 过期时间 < 现在时间
2.消息队列,依赖于
Redis
Beanstalkd
Kafka
RabbitMQ
等,可以时间更精准的后端控制最简单的实现,任务放进数据库,开一个进程定时扫描根据相关的规则对数据进行处理。
或者使用类似swoole这种带定时器和多线程引擎,直接使用swoole的定时器,到时间自动触发执行相关业务。
可以使用redis设置一个过期时间。
可以这样处理,后台设置一个定时任务,前端拿到剩余时间,如果一开始拿到时间已经结束,就控制页面变化,如果拿到剩余时间还没结束,再同时做倒计时,当时间到的时候,前端直接控制变化