System Design 设计一个类似cron(unix系统里的)的scheduler,系统需求是,用户发送很多task给我(scheduler),我需要schedule这些task,并且task传来的时候已经被规定好了运行时间,循环周期,内容,我们的系统需要执行所有的tasks。 这个问题的难点在于,怎么来做这个定时任务。因为每秒钟都可能有任务要执行,所以不可能每秒钟都去读数据库。怎获取当前这一秒钟需要执行的任务,是这个问题的关键。 我自己的理解是用消息队列+数据库来解决,但具体怎么实施没有思路。 比如说,数据库怎么插入?怎么制定分库规则?怎么保证系统的延迟?如果有一个w...