利用Quartz设计采集系统并实现系统双活机制_在SpringCloud中自己设计系统双活---SpringCloud工作笔记178

本文介绍了如何在SpringCloud项目中利用Quartz设计动态定时任务,以应对不停抓取数据的需求。同时,讨论了如何通过Quartz实现系统双活,确保集群中只有一个定时任务执行,以及动态添加、删除和修改任务的方法。在尝试使用Quartz的分布式功能时遇到问题,最后通过JobDataMap实现了任务参数的传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为项目仅仅是不停的抓数据,没有弄成分布式的,但依然需要系统双活来保证系统稳定.

 

这个时候,我的思路是:这个在另一篇博文中有些的详细思路(在Timer定时任务中_基于Redis自己实现一套双机互备_双活系统_基于抢占原则),可以搜索双活查到,但是实际

实现起来,碰到了一些问题,已经解决,记录下来.

来看一下定时任务Timer_Scheduled_Quartz_如何在SpringBoot中整合

首先根据上面这个博文,已经实现了,一个简单的quartz定时:

1.自己定义一个QuartzTask普通的接口,然后实现几个这个接口,做为不同的定时任务.

2.但这里需要的是,动态添加任务,因为系统启动后,不同的定时器,会做不同的工作,

并且,采集系统需要连接不同的IP的设置进行接口数据采集,这就要求,每个IP的设备

都需要有一个与之对应的定时器,而且,这个IP设备,是动态的,有可能将来,会动态的再添加

一个IP设备,那么这个时候,系统就会自动检测,自动为这个IP设备,生成一个定时任务.

3.所以可以看到,我们这个系统中的定时任务是动态添加的,但是应该是有2个定时任务是固定的.

4.一个定时任务是,用来检测系统,双活的,这个定时任务做的事情是,实时检测自身状态,没问题,就

更新最新时间,这样别的单点系统,在检测是时候发现,有一台机器上活着的,并且没有超时,就不会

上线,让出定时任务执行的机会,给主机,所有的从机属于待命状态.我们这样做,为了保证,集群

中的所有机器中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

添柴程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值