From af5c50cd890813180eaddc139c9034cd53292910 Mon Sep 17 00:00:00 2001 From: Cui YongXing <2835316714@qq.com> Date: Tue, 10 Sep 2024 01:05:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B6=85=E6=97=B6=E6=97=B6?= =?UTF-8?q?=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cloud-task-server/pom.xml | 5 +++++ .../server/service/impl/TaskInfoServiceImpl.java | 7 ++++--- .../thread/OptimizedPrioritizedThreadPool.java | 16 ++++++++-------- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/cloud-task-server/pom.xml b/cloud-task-server/pom.xml index f203e63..9809542 100644 --- a/cloud-task-server/pom.xml +++ b/cloud-task-server/pom.xml @@ -106,6 +106,11 @@ cloud-common-etl 1.0.0 + + com.muyu + cloud-rule-client + 1.0.0 + diff --git a/cloud-task-server/src/main/java/com/muyu/task/server/service/impl/TaskInfoServiceImpl.java b/cloud-task-server/src/main/java/com/muyu/task/server/service/impl/TaskInfoServiceImpl.java index 61f3978..5a85408 100644 --- a/cloud-task-server/src/main/java/com/muyu/task/server/service/impl/TaskInfoServiceImpl.java +++ b/cloud-task-server/src/main/java/com/muyu/task/server/service/impl/TaskInfoServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.client.basic.RuleConfig; import com.muyu.client.mysql.MySqlDataSource; import com.muyu.client.mysql.MySqlQuery; import com.muyu.common.core.domain.Result; @@ -366,7 +367,7 @@ public class TaskInfoServiceImpl extends ServiceImpl i private NodeRuleService nodeRuleService; @Autowired - private RuleFeign ruleFeign; + private RuleConfig ruleConfig; /** * 存放实例化引擎的容器 @@ -393,7 +394,7 @@ public class TaskInfoServiceImpl extends ServiceImpl i Future currentFuture = executor.submit(tasks.poll()); if (!CollectionUtils.isEmpty(list)) { for (NodeRule nodeRule : list) { - Result result = ruleFeign.findVersionById(nodeRule.getRuleId()); + Result result = ruleConfig.findVersionById(nodeRule.getRuleId()); RuleEngineVersion data = result.getData(); final Future finalCurrentFuture = currentFuture; log.info(finalCurrentFuture); @@ -409,7 +410,7 @@ public class TaskInfoServiceImpl extends ServiceImpl i //log.info(value.getValue()); try { //DataValue dataValue = loadEngineClass.testEngine(data.getClassName(), value); - ruleFeign.testEngine(data.getClassName(),value); + ruleConfig.testEngine(data.getClassName(),value); } catch (Exception e) { log.error(e.getMessage()); } diff --git a/cloud-task-server/src/main/java/com/muyu/task/server/thread/OptimizedPrioritizedThreadPool.java b/cloud-task-server/src/main/java/com/muyu/task/server/thread/OptimizedPrioritizedThreadPool.java index 4303f29..082f879 100644 --- a/cloud-task-server/src/main/java/com/muyu/task/server/thread/OptimizedPrioritizedThreadPool.java +++ b/cloud-task-server/src/main/java/com/muyu/task/server/thread/OptimizedPrioritizedThreadPool.java @@ -11,15 +11,15 @@ public class OptimizedPrioritizedThreadPool { private static final Semaphore lowPrioritySemaphore; private static final Semaphore emergencySemaphore; - private static final int totalThreads =20; // 固定线程池大小 - private static final int defaultHighThreads = 10; - private static final int defaultMediumThreads = 6; - private static final int defaultLowThreads = 4; + private static final int totalThreads =25; // 固定线程池大小 + private static final int defaultHighThreads = 12; + private static final int defaultMediumThreads = 8; + private static final int defaultLowThreads = 5; - private static final int emergencyThreads = 9; - private static final int emergencyHighThreads = 3; - private static final int emergencyMediumThreads = 3; - private static final int emergencyLowThreads = 3; + private static final int emergencyThreads = 12; + private static final int emergencyHighThreads = 4; + private static final int emergencyMediumThreads = 4; + private static final int emergencyLowThreads = 4; private static volatile boolean inEmergencyMode = false; public static final AtomicInteger activeEmergencyTasks = new AtomicInteger(0); // 紧急任务计数器