README.md 10.7 KB
Newer Older
许雪里's avatar
许雪里 已提交
1
<p align="center">
许雪里's avatar
许雪里 已提交
2
    <a href="http://www.xuxueli.com/xxl-job/">
许雪里's avatar
许雪里 已提交
3 4 5 6 7 8
        <img src="https://raw.githubusercontent.com/xuxueli/xxl-job/master/doc/images/xxl-logo.jpg" width="150">
    </a>
    <h3 align="center">XXL-JOB</h3>
    <p align="center">
        XXL-JOB, a lightweight distributed task scheduling framework.
        <br>
许雪里's avatar
许雪里 已提交
9
        <a href="http://www.xuxueli.com/xxl-job/"><strong>-- Browse website. --</strong></a>
许雪里's avatar
许雪里 已提交
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
        <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
许雪里 已提交
26 27 28 29
         </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
许雪里 已提交
30 31
    </p>    
</p>
许雪里's avatar
许雪里 已提交
32

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

许雪里's avatar
许雪里 已提交
34
## Introduction
许雪里's avatar
许雪里 已提交
35 36 37
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
许雪里 已提交
38

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

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

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

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

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

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

X
xueli.xue 已提交
89
至今,XXL-JOB已接入多家公司的线上产品线,接入场景如电商业务,O2O业务和大数据作业等,截止2016-07-19为止,XXL-JOB已接入的公司包括不限于:
X
xueli.xue 已提交
90 91 92 93 94 95
    
	- 1、大众点评;
	- 2、山东学而网络科技有限公司;
	- 3、安徽慧通互联科技有限公司;
	- 4、人人聚财金服;
	- 5、上海棠棣信息科技股份有限公司
X
xueli.xue 已提交
96
	- 6、运满满
X
xueli.xue 已提交
97
	- 7、米其林 (中国区)
X
xueli.xue 已提交
98
	- 8、妈妈联盟
X
xueli.xue 已提交
99
	- 9、九樱天下(北京)信息技术有限公司
X
xueli.xue 已提交
100
	- 10、万普拉斯科技有限公司(一加手机)
X
xueli.xue 已提交
101
	- 11、上海亿保健康管理有限公司
X
xueli.xue 已提交
102
	- 12、海尔馨厨 (海尔)
X
xueli.xue 已提交
103
	- 13、河南大红包电子商务有限公司
X
xueli.xue 已提交
104
	- 14、成都顺点科技有限公司
X
xueli.xue 已提交
105 106
	- 15、深圳市怡亚通
	- 16、深圳麦亚信科技股份有限公司
X
xueli.xue 已提交
107
	- 17、上海博莹科技信息技术有限公司
108
	- 18、中国平安科技有限公司
X
xueli.xue 已提交
109 110 111 112
	- 19、杭州知时信息科技有限公司
	- 20、博莹科技(上海)有限公司
	- 21、成都依能股份有限责任公司
	- 22、湖南高阳通联信息技术有限公司
X
xueli.xue 已提交
113
	- 23、深圳市邦德文化发展有限公司
X
xueli.xue 已提交
114
	- 24、福建阿思可网络教育有限公司
115
	- 25、优信二手车
X
xueli.xue 已提交
116
	- 26、上海悠游堂投资发展股份有限公司
X
xueli.xue 已提交
117 118
	- 27、北京粉笔蓝天科技有限公司
	- 28、中秀科技(无锡)有限公司
许雪里's avatar
许雪里 已提交
119 120 121
	- 29、武汉空心科技有限公司
	- 30、北京蚂蚁风暴科技有限公司
	- 31、四川互宜达科技有限公司
许雪里's avatar
许雪里 已提交
122 123
    - 32、钱包行云(北京)科技有限公司
    - 33、重庆欣才集团
许雪里's avatar
许雪里 已提交
124 125 126
    - 34、咪咕互动娱乐有限公司(中国移动)
    - 35、北京诺亦腾科技有限公司
    - 36、增长引擎(北京)信息技术有限公司
许雪里's avatar
许雪里 已提交
127 128
    - 37、北京英贝思科技有限公司
    - 38、刚泰集团
许雪里's avatar
许雪里 已提交
129
    - 39、深圳泰久信息系统股份有限公司
许雪里's avatar
许雪里 已提交
130 131 132 133
    - 40、随行付支付有限公司
    - 41、广州瀚农网络科技有限公司
    - 42、享点科技有限公司
    - 43、杭州比智科技有限公司
许雪里's avatar
许雪里 已提交
134 135
    - 44、圳临界线网络科技有限公司
    - 45、广州知识圈网络科技有限公司
许雪里's avatar
许雪里 已提交
136 137
    - 46、国誉商业上海有限公司
    - 47、海尔消费金融有限公司,嗨付、够花 (海尔)
X
xueli.xue 已提交
138 139
	- ……

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

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

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

许雪里's avatar
许雪里 已提交
145
## Communication
许雪里's avatar
许雪里 已提交
146

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

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

许雪里's avatar
许雪里 已提交
151 152
## 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 已提交
153

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


许雪里's avatar
许雪里 已提交
157 158 159 160 161
## 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 已提交
162

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

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

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

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