xxl-job如何保证调度的一致性

2021-02-24  本文已影响0人  Spring_java

1:所谓的调度一致性,是指保证一次任务调度只有一个机器来执行,而不会因为其是分布式部署而出现多台机器同时执行某一个job
2:保证调度一次性的方法就是采用分布式锁,常见的分布式锁主要有以下3种方式

3: 在xxl-job中实现分布式锁用的数据库的分布式锁,其中一个表只存储表的名称,通过 for update 来查询锁。
1):conn.setAutoCommit(false); 关闭隐式提交。
2):select * from xxl_job_lock where lock preparedStatement.execute(); 获得显示排他锁,然后开启事务。
3):conn.commit(); 事务完毕后,提交。
4):preparedStatement.close(); 释放悲观锁开启下一次轮回。
代码在:JobScheduleHelper


代码.png
上一篇 下一篇

猜你喜欢

热点阅读