从xxl-job看分布式调度中心的设计

xxl-job是xuxueli同学开源的XXL系列中的一员,是一个分布式任务调度平台。我在撸完了TCP/IP协议栈源码(netX, 非开源,讲真,里面关于TCP拥塞控制那部分没看明白)、Tomcat源码(JSP/Servlet容器)、Motan源码(RPC框架)之后。想研究一下调度中心的实现, 也没有仔细比较过就选择了XXL_JOB. 撸完一遍源码后,发现是一个比较小的项目,所以就不打算搞一个系列了,就整一篇博客总结一下,还是有所收获的。

关于xxl_job的功能介绍以及使用方法,作者写的文档很详细,也很容易上手,这里就不追溯了。代码相对简单,没有复杂的算法、数据结构、线程模型等,我就不抠细节了,从大的方面来总结下。

1. 项目结构