冪等性監(jiān)聽管理器io.elasticjob.lite.internal.sharding.MonitorExecutionListenerManager
比較簡單,只啟動了一個監(jiān)聽器io.elasticjob.lite.internal.sharding.MonitorExecutionListenerManager.MonitorExecutionSettingsChangedJobListener
,該監(jiān)聽器會接收zk路徑jobName/config
的值改變事件。當配置信息更新為不監(jiān)控運行情況時,監(jiān)控器會清除所有分片項的運行狀態(tài)標志。即刪除zk節(jié)點sharding/分片項/running
。
sharding/分片項/running
分片項正在運行的狀態(tài),僅配置monitorExecution時有效
protected void dataChanged(final String path, final Type eventType, final String data) {
if (configNode.isConfigPath(path) && Type.NODE_UPDATED == eventType && !LiteJobConfigurationGsonFactory.fromJson(data).isMonitorExecution()) {
executionService.clearAllRunningInfo();
}
}