From cc97052cc0c2e4c69768150b8c8ec50fb3583a42 Mon Sep 17 00:00:00 2001 From: Technoboy- Date: Mon, 9 Mar 2020 10:23:25 +0800 Subject: [PATCH] refactor MasterSchedulerService --- .../server/master/MasterServer.java | 7 +++++ .../master/runner/MasterSchedulerService.java | 26 +++++++++---------- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/MasterServer.java b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/MasterServer.java index 212e5d9a8..0f3656b22 100644 --- a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/MasterServer.java +++ b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/MasterServer.java @@ -26,6 +26,7 @@ import org.apache.dolphinscheduler.server.master.processor.TaskAckProcessor; import org.apache.dolphinscheduler.server.master.processor.TaskKillResponseProcessor; import org.apache.dolphinscheduler.server.master.processor.TaskResponseProcessor; import org.apache.dolphinscheduler.server.master.registry.MasterRegistry; +import org.apache.dolphinscheduler.server.master.runner.MasterSchedulerService; import org.apache.dolphinscheduler.server.zk.ZKMasterClient; import org.apache.dolphinscheduler.service.bean.SpringApplicationContext; import org.apache.dolphinscheduler.service.quartz.QuartzExecutors; @@ -80,6 +81,9 @@ public class MasterServer { @Autowired private ZKMasterClient zkMasterClient; + @Autowired + private MasterSchedulerService masterSchedulerService; + /** * master server startup * @@ -109,6 +113,8 @@ public class MasterServer { // this.zkMasterClient.start(); this.masterRegistry.registry(); + // + masterSchedulerService.start(); // start QuartzExecutors // what system should do if exception @@ -162,6 +168,7 @@ public class MasterServer { this.nettyRemotingServer.close(); this.masterRegistry.unRegistry(); this.zkMasterClient.close(); + this.masterSchedulerService.close(); //close quartz try{ diff --git a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterSchedulerService.java b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterSchedulerService.java index a5598ee8c..6949ada02 100644 --- a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterSchedulerService.java +++ b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterSchedulerService.java @@ -34,8 +34,6 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; import java.util.concurrent.ThreadPoolExecutor; /** @@ -49,11 +47,6 @@ public class MasterSchedulerService extends Thread { */ private static final Logger logger = LoggerFactory.getLogger(MasterSchedulerService.class); - /** - * master exec service - */ - private ThreadPoolExecutor masterExecService; - /** * dolphinscheduler database interface */ @@ -66,28 +59,33 @@ public class MasterSchedulerService extends Thread { @Autowired private ZKMasterClient zkMasterClient; + @Autowired + private MasterConfig masterConfig; + /** * netty remoting client */ - private NettyRemotingClient nettyRemotingClient; - + private final NettyRemotingClient nettyRemotingClient; - @Autowired - private MasterConfig masterConfig; + /** + * master exec service + */ + private final ThreadPoolExecutor masterExecService; /** * constructor of MasterSchedulerThread */ - @PostConstruct - public void init(){ + public MasterSchedulerService(){ this.masterExecService = (ThreadPoolExecutor)ThreadUtils.newDaemonFixedThreadExecutor("Master-Exec-Thread", masterConfig.getMasterExecThreads()); NettyClientConfig clientConfig = new NettyClientConfig(); this.nettyRemotingClient = new NettyRemotingClient(clientConfig); + } + + public void start(){ super.setName("MasterSchedulerThread"); super.start(); } - @PreDestroy public void close(){ nettyRemotingClient.close(); logger.info("master schedule service stopped..."); -- GitLab