分布式任务调度平台XXL-JOB
XXL-JOB是一个轻量级分布式任务调度框架,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。
在调研xxl-job(以下简称xxl)时做了一些测试,现奉上初段测试结果,
在使用xxl的时候,先看了下他的架构图,如下
第一次看没有理出流程流转的头绪,索性直接动手测试探究下。
xxl能否用到生产环境的决定因素一定是稳定性,稳定压倒一切。这次测试我们就从稳定性开始着手,
我的测试基础环境是window10 professional,i7+16g,tomcat8.0.35内存最大上调到1g。
好了开始xxl的配置工作,首先配置4个执行器,如下图
每个执行器均有一个tomcat实例对应。
在任务管理中新建对应的4个任务
每个任务均采用GLUE方式,只在执行器端输出“XXL-JOB, Hello World.”
后面3个也按照此配置进行,全部配置搞定后,开始测试执行24小时。
结果如上图,程序跑了大概24小时,约34.5万次调度,无一次失败。但发现了一个问题,先看图,下图为Tomcat内存占用
上图所示4个执行器tomcat内存占用都不高,在100m以内,初始启动时内存占用在250m左右,但xxl-admin的tomcat内存占用异常,已经达到了1288m,初始时在750m左右,而且还在持续增长,此问题也咨询过作者@雪里,作者表示不清楚问题所在,我有个大胆的猜测,可能是心跳链接或者通讯链接占用过多无法及时释放导致的?
这次测试并未对xxl-admin的failover进行测试,仅仅测试了稳定性,为的是接下来的残酷测试,每秒5次调用,每个执行器双机器failover,看看xxl能顶多久,让我们拭目以待。