1.视界
1. 概述
Kylin源码分析系列一—任务调度
注:Kylin源码分析系列基于Kylin的2.6.0版本的源码,其他版本可以类比。
Kylin在Web上触发Cube的相关操作后并不是马上执行相关的操作,而是将构建的任务提交到任务调度服务,任务调度服务每隔一段时间会将提交了未执行的job进行调度执行,默认是30s调度一次,可根据配置项kylin.job.scheduler.poll-interval-second
来配置调度时间间隔。
任务调度服务的服务类为`JobService`,包路径:`org.apache.kylin.rest.service.JobService`。`JobService`是通过实现`InitializingBean`接口,继而实现`afterPropertiesSet`的方法 ,然后通过配置spring加载bean的方式被初始化的;具体是通过配置文件来装配bean的,涉及到的配置文件有:在`./tomcat/webapps/kylin/WEB-INF/web.xml`中引入了`./tomcat/webapps/kylin/WEB-INF/classes/applicationContext.x