README.md 13.3 KB
Newer Older
许雪里's avatar
许雪里 已提交
1
<p align="center">
许雪里's avatar
许雪里 已提交
2
    <img src="https://raw.githubusercontent.com/xuxueli/xxl-job/master/doc/images/xxl-logo.jpg" width="150">
许雪里's avatar
许雪里 已提交
3 4 5 6
    <h3 align="center">XXL-JOB</h3>
    <p align="center">
        XXL-JOB, a lightweight distributed task scheduling framework.
        <br>
许雪里's avatar
许雪里 已提交
7
        <a href="http://www.xuxueli.com/xxl-job/"><strong>-- Home Page --</strong></a>
许雪里's avatar
许雪里 已提交
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
        <br>
        <br>
        <a href="https://travis-ci.org/xuxueli/xxl-job">
            <img src="https://travis-ci.org/xuxueli/xxl-job.svg?branch=master" >
        </a>
        <a href="https://maven-badges.herokuapp.com/maven-central/com.xuxueli/xxl-job/">
            <img src="https://maven-badges.herokuapp.com/maven-central/com.xuxueli/xxl-job/badge.svg" >
        </a>
         <a href="https://github.com/xuxueli/xxl-job/releases">
             <img src="https://img.shields.io/github/release/xuxueli/xxl-job.svg" >
         </a>
         <a href="http://www.gnu.org/licenses/gpl-3.0.html">
             <img src="https://img.shields.io/badge/license-GPLv3-blue.svg" >
         </a>
         <a href="https://gitter.im/xuxueli/xxl-job?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge">
              <img src="https://badges.gitter.im/xuxueli/xxl-job.svg" >
许雪里's avatar
许雪里 已提交
24 25 26 27
         </a>
         <a href="http://www.xuxueli.com/page/donate.html">
               <img src="https://img.shields.io/badge/%24-donate-ff69b4.svg?style=flat-square" >
         </a>
许雪里's avatar
许雪里 已提交
28 29
    </p>    
</p>
许雪里's avatar
许雪里 已提交
30

许雪里's avatar
许雪里 已提交
31

许雪里's avatar
许雪里 已提交
32
## Introduction
许雪里's avatar
许雪里 已提交
33 34 35
XXL-JOB is a lightweight distributed task scheduling framework. 
It's core design goal is to develop quickly and learn simple, lightweight, and easy to expand. 
Now, it's already open source, and many companies use it in production environments, real "out-of-the-box".
许雪里's avatar
许雪里 已提交
36

许雪里's avatar
许雪里 已提交
37
XXL-JOB是一个轻量级分布式任务调度框架,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。
X
xueli.xue 已提交
38

许雪里's avatar
许雪里 已提交
39

许雪里's avatar
许雪里 已提交
40
## Documentation
许雪里's avatar
许雪里 已提交
41 42
- [中文文档](http://www.xuxueli.com/xxl-job/)
- [English Documentation](http://www.xuxueli.com/xxl-job/en/)
许雪里's avatar
许雪里 已提交
43

许雪里's avatar
许雪里 已提交
44

许雪里's avatar
许雪里 已提交
45
## Features
X
xueli.xue 已提交
46 47
- 1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;
- 2、动态:支持动态修改任务状态、暂停/恢复任务,以及终止运行中任务,即时生效;
许雪里's avatar
许雪里 已提交
48
- 3、调度中心HA(中心式):调度采用中心式设计,“调度中心”基于集群Quartz实现并支持集群部署,可保证调度中心HA;
X
xueli.xue 已提交
49
- 4、执行器HA(分布式):任务分布式执行,任务"执行器"支持集群部署,可保证任务执行HA;
许雪里's avatar
许雪里 已提交
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
- 5、注册中心: 执行器会周期性自动注册任务, 调度中心将会自动发现注册的任务并触发执行。同时,也支持手动录入执行器地址;
- 6、弹性扩容缩容:一旦有新执行器机器上线或者下线,下次调度时将会重新分配任务;
- 7、路由策略:执行器集群部署时提供丰富的路由策略,包括:第一个、最后一个、轮询、随机、一致性HASH、最不经常使用、最近最久未使用、故障转移、忙碌转移等;
- 8、故障转移:任务路由策略选择"故障转移"情况下,如果执行器集群中某一台机器故障,将会自动Failover切换到一台正常的执行器发送调度请求。
- 9、失败处理策略;调度失败时的处理策略,策略包括:失败告警(默认)、失败重试;
- 10、失败重试:调度中心调度失败且启用"失败重试"策略时,将会自动重试一次;执行器执行失败且回调失败重试状态时,也将会自动重试一次;
- 11、阻塞处理策略:调度过于密集执行器来不及处理时的处理策略,策略包括:单机串行(默认)、丢弃后续调度、覆盖之前调度;
- 12、分片广播任务:执行器集群部署时,任务路由策略选择"分片广播"情况下,一次任务调度将会广播触发集群中所有执行器执行一次任务,可根据分片参数开发分片任务;
- 13、动态分片:分片广播任务以执行器为维度进行分片,支持动态扩容执行器集群从而动态增加分片数量,协同进行业务处理;在进行大数据量业务操作时可显著提升任务处理能力和速度。
- 14、事件触发:除了"Cron方式"和"任务依赖方式"触发任务执行之外,支持基于事件的触发任务方式。调度中心提供触发任务单次执行的API服务,可根据业务事件灵活触发。
- 15、任务进度监控:支持实时监控任务进度;
- 16、Rolling实时日志:支持在线查看调度结果,并且支持以Rolling方式实时查看执行器输出的完整的执行日志;
- 17、GLUE:提供Web IDE,支持在线开发任务逻辑代码,动态发布,实时编译生效,省略部署上线的过程。支持30个版本的历史版本回溯。
- 18、脚本任务:支持以GLUE模式开发和运行脚本任务,包括Shell、Python、NodeJS等类型脚本;
- 19、任务依赖:支持配置子任务依赖,当父任务执行结束且执行成功后将会主动触发一次子任务的执行, 多个子任务用逗号分隔;
- 20、一致性:“调度中心”通过DB锁保证集群分布式调度的一致性, 一次任务调度只会触发一次执行;
- 21、自定义任务参数:支持在线配置调度任务入参,即时生效;
- 22、调度线程池:调度系统多线程触发调度运行,确保调度精确执行,不被堵塞;
- 23、数据加密:调度中心和执行器之间的通讯进行数据加密,提升调度信息安全性;
- 24、邮件报警:任务失败时支持邮件报警,支持配置多邮件地址群发报警邮件;
- 25、推送maven中央仓库: 将会把最新稳定版推送到maven中央仓库, 方便用户接入和使用;
- 26、运行报表:支持实时查看运行数据,如任务数量、调度次数、执行器数量等;以及调度报表,如调度日期分布图,调度成功分布图等;
许雪里's avatar
许雪里 已提交
72 73
- 27、全异步:系统底层实现全部异步化,针对密集调度进行流量削峰,理论上支持任意时长任务的运行;
- 28、国际化:调度中心支持国际化设置,提供中文、英文两种可选语言,默认为中文;
许雪里's avatar
许雪里 已提交
74

许雪里's avatar
许雪里 已提交
75
## Development
X
xueli.xue 已提交
76 77
于2015年中,我在github上创建XXL-JOB项目仓库并提交第一个commit,随之进行系统结构设计,UI选型,交互设计……

许雪里's avatar
许雪里 已提交
78
于2015-11月,XXL-JOB终于RELEASE了第一个大版本V1.0, 随后我将之发布到OSCHINA,XXL-JOB在OSCHINA上获得了@红薯的热门推荐,同期分别达到了OSCHINA的“热门动弹”排行第一和git.oschina的开源软件月热度排行第一,在此特别感谢红薯,感谢大家的关注和支持。
X
xueli.xue 已提交
79 80 81

于2015-12月,我将XXL-JOB发表到我司内部知识库,并且得到内部同事认可。

X
xueli.xue 已提交
82 83 84
于2016-01月,我司展开XXL-JOB的内部接入和定制工作,在此感谢袁某和尹某两位同事的贡献,同时也感谢内部其他给与关注与支持的同事。

于2017-05-13,在上海举办的 "[第62期开源中国源创会](https://www.oschina.net/event/2236961)" 的 "放码过来" 环节,我登台对XXL-JOB做了演讲,台下五百位在场观众反响热烈([图文回顾](https://www.oschina.net/question/2686220_2242120) )。
X
xueli.xue 已提交
85

许雪里's avatar
许雪里 已提交
86 87
于2017-12-11,XXL-JOB有幸参会《[InfoQ ArchSummit全球架构师峰会](http://bj2017.archsummit.com/)》,并被拍拍贷架构总监"杨波老师"在专题 "[微服务原理、基础架构和开源实践](http://bj2017.archsummit.com/training/2)" 中现场介绍。

许雪里's avatar
许雪里 已提交
88
> 我司大众点评目前已接入XXL-JOB,内部别名《Ferrari》(Ferrari基于XXL-JOB的V1.1版本定制而成,新接入应用推荐升级最新版本)。**
许雪里's avatar
许雪里 已提交
89
据最新统计, 自2016-01-21接入至2017-12-01期间,该系统已调度约100万次,表现优异。新接入应用推荐使用最新版本,因为经过数个大版本的更新,系统的任务模型、UI交互模型以及底层调度通讯模型都有了较大的优化和提升,核心功能更加稳定高效。
X
xueli.xue 已提交
90

X
xueli.xue 已提交
91
至今,XXL-JOB已接入多家公司的线上产品线,接入场景如电商业务,O2O业务和大数据作业等,截止2016-07-19为止,XXL-JOB已接入的公司包括不限于:
X
xueli.xue 已提交
92 93 94 95 96 97
    
	- 1、大众点评;
	- 2、山东学而网络科技有限公司;
	- 3、安徽慧通互联科技有限公司;
	- 4、人人聚财金服;
	- 5、上海棠棣信息科技股份有限公司
X
xueli.xue 已提交
98
	- 6、运满满
X
xueli.xue 已提交
99
	- 7、米其林 (中国区)
X
xueli.xue 已提交
100
	- 8、妈妈联盟
X
xueli.xue 已提交
101
	- 9、九樱天下(北京)信息技术有限公司
X
xueli.xue 已提交
102
	- 10、万普拉斯科技有限公司(一加手机)
X
xueli.xue 已提交
103
	- 11、上海亿保健康管理有限公司
X
xueli.xue 已提交
104
	- 12、海尔馨厨 (海尔)
X
xueli.xue 已提交
105
	- 13、河南大红包电子商务有限公司
X
xueli.xue 已提交
106
	- 14、成都顺点科技有限公司
X
xueli.xue 已提交
107 108
	- 15、深圳市怡亚通
	- 16、深圳麦亚信科技股份有限公司
X
xueli.xue 已提交
109
	- 17、上海博莹科技信息技术有限公司
110
	- 18、中国平安科技有限公司
X
xueli.xue 已提交
111 112 113 114
	- 19、杭州知时信息科技有限公司
	- 20、博莹科技(上海)有限公司
	- 21、成都依能股份有限责任公司
	- 22、湖南高阳通联信息技术有限公司
X
xueli.xue 已提交
115
	- 23、深圳市邦德文化发展有限公司
X
xueli.xue 已提交
116
	- 24、福建阿思可网络教育有限公司
117
	- 25、优信二手车
X
xueli.xue 已提交
118
	- 26、上海悠游堂投资发展股份有限公司
X
xueli.xue 已提交
119 120
	- 27、北京粉笔蓝天科技有限公司
	- 28、中秀科技(无锡)有限公司
许雪里's avatar
许雪里 已提交
121 122 123
	- 29、武汉空心科技有限公司
	- 30、北京蚂蚁风暴科技有限公司
	- 31、四川互宜达科技有限公司
许雪里's avatar
许雪里 已提交
124 125
    - 32、钱包行云(北京)科技有限公司
    - 33、重庆欣才集团
许雪里's avatar
许雪里 已提交
126 127 128
    - 34、咪咕互动娱乐有限公司(中国移动)
    - 35、北京诺亦腾科技有限公司
    - 36、增长引擎(北京)信息技术有限公司
许雪里's avatar
许雪里 已提交
129 130
    - 37、北京英贝思科技有限公司
    - 38、刚泰集团
许雪里's avatar
许雪里 已提交
131
    - 39、深圳泰久信息系统股份有限公司
许雪里's avatar
许雪里 已提交
132 133 134 135
    - 40、随行付支付有限公司
    - 41、广州瀚农网络科技有限公司
    - 42、享点科技有限公司
    - 43、杭州比智科技有限公司
许雪里's avatar
许雪里 已提交
136 137
    - 44、圳临界线网络科技有限公司
    - 45、广州知识圈网络科技有限公司
许雪里's avatar
许雪里 已提交
138 139
    - 46、国誉商业上海有限公司
    - 47、海尔消费金融有限公司,嗨付、够花 (海尔)
许雪里's avatar
许雪里 已提交
140 141 142 143 144 145 146 147 148 149
    - 48、广州巴图鲁信息科技有限公司
    - 49、深圳市鹏海运电子数据交换有限公司
    - 50、深圳市亚飞电子商务有限公司
    - 51、上海趣医网络有限公司
    - 52、聚金资本
    - 53、北京父母邦网络科技有限公司
    - 54、中山元赫软件科技有限公司
    - 55、中商惠民(北京)电子商务有限公司
    - 56、凯京集团
    - 57、华夏票联(北京)科技有限公司
许雪里's avatar
许雪里 已提交
150
    - 58、拍拍贷
许雪里's avatar
许雪里 已提交
151
    - 59、北京尚德机构在线教育有限公司
许雪里's avatar
许雪里 已提交
152
    - 60、任子行股份有限公司
许雪里's avatar
许雪里 已提交
153 154 155 156 157 158
    - 61、北京时态电子商务有限公司
    - 62、深圳卷皮网络科技有限公司
    - 63、北京安博通科技股份有限公司
    - 64、未来无线网
    - 65、厦门瓷禧网络有限公司
    - 66、北京递蓝科软件股份有限公司
许雪里's avatar
许雪里 已提交
159 160 161 162 163 164 165
    - 67、郑州创海软件科技公司
    - 68、北京国槐信息科技有限公司
    - 69、浪潮软件集团
    - 70、多立恒(北京)信息技术有限公司
    - 71、广州极迅客信息科技有限公司
    - 72、赫基(中国)集团股份有限公司
    - 73、海投汇
许雪里's avatar
许雪里 已提交
166 167 168 169 170
    - 74、上海润益创业孵化器管理股份有限公司
    - 75、汉纳森(厦门)数据股份有限公司
    - 76、安信信托
    - 77、岚儒财富
    - 78、捷道软件
许雪里's avatar
许雪里 已提交
171 172 173 174 175 176
    - 79、湖北享七网络科技有限公司
    - 80、湖南创发科技责任有限公司
    - 81、深圳小安时代互联网金融服务有限公司
    - 82、湖北享七网络科技有限公司
    - 83、钱包行云(北京)科技有限公司
    - 84、360金融 (360)
许雪里's avatar
许雪里 已提交
177 178 179 180
    - 85、易企秀
    - 86、摩贝(上海)生物科技有限公司
    - 87、广东芯智慧科技有限公司
    - 88、联想集团 (联想)
许雪里's avatar
许雪里 已提交
181 182 183 184
    - 89、怪兽充电
    - 90、行圆汽车
    - 91、深圳店店通科技邮箱公司
    - 92、京东 (京东)
X
xueli.xue 已提交
185 186
	- ……

许雪里's avatar
许雪里 已提交
187
> 更多接入的公司,欢迎在 [登记地址](https://github.com/xuxueli/xxl-job/issues/1 ) 登记,登记仅仅为了产品推广。
X
xueli.xue 已提交
188

许雪里's avatar
许雪里 已提交
189
欢迎大家的关注和使用,XXL-JOB也将拥抱变化,持续发展。
许雪里's avatar
许雪里 已提交
190

许雪里's avatar
许雪里 已提交
191

许雪里's avatar
许雪里 已提交
192
## Communication
许雪里's avatar
许雪里 已提交
193

许雪里's avatar
许雪里 已提交
194
- [社区交流](http://www.xuxueli.com/page/community.html)
许雪里's avatar
许雪里 已提交
195
- [Gitter](https://gitter.im/xuxueli/xxl-job)
X
xueli.xue 已提交
196

许雪里's avatar
许雪里 已提交
197

许雪里's avatar
许雪里 已提交
198 199
## Contributing
Contributions are welcome! Open a pull request to fix a bug, or open an [Issue](https://github.com/xuxueli/xxl-job/issues/) to discuss a new feature or change.
X
xueli.xue 已提交
200

许雪里's avatar
许雪里 已提交
201
欢迎参与项目贡献!比如提交PR修复一个bug,或者新建 [Issue](https://github.com/xuxueli/xxl-job/issues/) 讨论新特性或者变更。
X
coding  
xueli.xue 已提交
202 203


许雪里's avatar
许雪里 已提交
204 205 206 207 208
## Copyright and License
This product is open source and free, and will continue to provide free community technical support. Individual or enterprise users are free to access and use.

- Licensed under the GNU General Public License (GPL) v3.
- Copyright (c) 2015-present, xuxueli.
X
xueli.xue 已提交
209

许雪里's avatar
许雪里 已提交
210 211
产品开源免费,并且将持续提供免费的社区技术支持。个人或企业内部可自由的接入和使用。

许雪里's avatar
许雪里 已提交
212

许雪里's avatar
许雪里 已提交
213
## Donate
许雪里's avatar
许雪里 已提交
214
No matter how much the donation amount is enough to express your thought, thank you very much :)     [To donate](http://www.xuxueli.com/page/donate.html )
许雪里's avatar
许雪里 已提交
215

许雪里's avatar
许雪里 已提交
216
无论捐赠金额多少都足够表达您这份心意,非常感谢 :)      [前往捐赠](http://www.xuxueli.com/page/donate.html )