diff --git a/ch6-cloud/ch6-10-delay-job.md b/ch6-cloud/ch6-10-delay-job.md index 837da81..00791c7 100644 --- a/ch6-cloud/ch6-10-delay-job.md +++ b/ch6-cloud/ch6-10-delay-job.md @@ -1,3 +1,12 @@ # 6.10. 延时任务系统 -TODO +我们在做系统时,很多时候是处理实时的任务,请求来了马上就处理,然后立刻给用户以反馈。但有时也会遇到非实时的任务,比如确定的时间点发布重要公告。或者需要在用户做了一件事情的 X 分钟/Y 小时后,对其特殊动作,比如通知、发券等等。 + +如果业务规模比较小,有时我们也可以通过 db + 轮询来对这种任务进行简单处理,但上了规模的公司,自然会寻找更为普适的解决方案来解决这一类问题。 + +一般有两种思路来解决这个问题: + +1. 实现一套类似 crontab 的分布式定时任务管理系统 +2. 实现一个支持定时发送消息的消息队列。 + +两种思路进而衍生出了一些不同的系统,但其本质是差不多的。本质上都是需要实现一个定时器。