基于TBSchedule官方3.2.18的重置版。TBSchedule具有框架轻、零入侵、效率高(高过elastic-job和xxl-job)等诸多特点,无奈官方于3.3.3.2版本后停止了升级与BUG修复。如此好的分布式任务调度框架弃之可惜,所以就让作者来捡个便宜吧。
重置版主要在官方原版的基础上优化了以下几点:
任务项状态管理全部改为顺序操作,牺牲一定的并发效能提升稳定性解决在以往的实践使用中(大量job共用一个调度中心切job执行频繁场景)官方版偶尔出现任务不能正确停止与注销,造成任务项死循环执行,CPU满负载且产生大量脏日志的问题;优化在ZooKeeper集群不稳定时,策略与任务的注册与反注册用户手册基础用法与官方版一致,新手可以参考:https://my.oschina.net/wednesday/
构建gitclonehttps://github.com/hungki/wed-jobmvncleanpackageRELEASENOTE
Jul172019-1.0.1_RELEASE
maven坐标变更<dependency><groupId>com.wednesday</groupId><artifactId>wed-job</artifactId><version>1.0.1</version></dependency>修复因使用Timer类自身误差BUG在高频SLEEP模式下调用任务,当误差时间累积超过SLEEP时间时任务变成无限执行的问题(使用的ScheduledThreadPoolExecutord代替);将原生ZooKeeperapi替换为CuratorFramework以修复因官方最后版本zk重连机制不健全引起的任务执行server假死无任何日志输出的问题;Feb282019-1.0.1_GA:
修复Sleep时间短(ex:500ms)下,使用Timer类BUG导致Task停摆的问题使用CuratorFramework代替官方ZooKeeperAPI已获得更好的链接稳定性已经重连机制更新Java支持到[1.7,1.8)整理项目结构Nov52018-1.0.0:
job实现器追加pageNum参数(根据eachFetchDataNum和FetchCount计算得出)修订文档变更软件名及版本号TODO
add:新版Consolefix:彻底修复高频词运行下任务假死的问题feature:提供数据库注册中心的并行版本,可视化更强,效率会比目前版本低一些但是能避免ZooKeeper对网络的高依赖,性能与稳定的平衡交给用户选择。feature:提供便捷的子任务功能,目前版本子任务需要大量代码实现且不具备可视化能力,但是没有任务编排怎么又好意思成为一个完整的任务调度中心呢?
评论