为什么要用分布式定时任务?

01、如何简单实现定时功能?

我是看视频入门Java的,那时候学Java基础API的时候,看的视频也带有讲定时功能(JDK原生就支持),我记得视频讲师写了Timer来讲解定时任务。

当时并不知道定时任务有什么实际作用,所以在初学阶段的我,从来没使用过Timer来实现定时的功能。

再后来,我学到并发了。那时候的讲师提到了ScheduledExecutorService这个接口,它比Timer更加强大,一般我们在JDK里可以用它来实现定时的功能

强就强在于ScheduledExecutorService内部是线程池,Timer是单线程,它能更合理的利用资源。

我学并发的时候,我也并不太关注它(它并不是并发的重点),所以我也没用过ScheduledExecutorService来实现定时的功能。

后来吧,要到学习做项目了,那时候视频有个Quartz课程。我记得理解了很久,最后我才反应过来了,原来写了这么多的代码就是用它来实现定时的功能。

至于比ScheduledExecutorServiceTimer好在哪里呢,最直观的是:它支持cron表达式。

为啥我会理解很久呢,因为Quartzapi太复杂了(它也有着自己的专业术语和概念性的东西)。不过这种跟着做项目的,我是一步一步跟着敲代码的。

Quartz相关的API我是记不住了,但那时候我理解了:原来我们写代码可以靠「组件包」来完成想要的功能,原来这就是cron表达式。

等到我大三的时候,我想用自己学过的知识点来写个小项目,也算是梳理一遍自己到底学了什么东西。于是,我想起了Quartz

那时候我已经学到了Spring/SpringBoot了。所以当我在网上搜SpringQuartz整合的时候,了解到了SpringTask,再后来发现了@Schedule注解。

只需要一个简单的注解,就能实现定时任务的功能,并且支持cron表达式。

那那那那,还要个锤子的Quartz啊!

02、实习&&工作 定时任务

等我工作了之后,我学到了一个新的名词「分布式定时任务框架」。等我踏入职场了以后

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值