我比较熟悉crontab也常用crontab,定时任务就想当于可以设置每天这个时间执行数据库里没有执行的任务,我感觉就是像是消息队列一样,有任务生产者和任务执行者。我想知道区别是什么?
2 回答
梵蒂冈之花
TA贡献1900条经验 获得超5个赞
哥们,这是完全没可比性的两个东西呀——尽管你在实践上会把他们用在类似的场景。消息队列,好比一根塑料管,一头往里放鸡蛋,另一头有人拿走(先别追究先进先出、先进后出、优先级这些,纯粹为举例简单);计划任务(Crontab或Java的Timer,ScheduledExecutorService等),它只是个铃铛,到点响一下叫你起床工作,但为了应用到P-C模式里,你可以在这个铃铛边上放个篮子(数据库、日志、队列都行),任何一只母鸡(Prosumer)吃饱了都把蛋下到里面,铃铛响了你(Consumer)就去检查篮子里有蛋没。
慕森卡
TA贡献1806条经验 获得超8个赞
crontab和消息队列不是一个东西。消息队列,这里面最重要的就是消息,也就是一个消息排队的中间件,作用一般是应用间的解耦,削峰填谷等,你对crontab比较熟悉应该是知道crontab不是处理消息的,只是根据时间表示式去执行任务而已。
添加回答
举报
0/150
提交
取消