diff --git a/cloud-task-common/src/main/java/com/muyu/common/domian/basic/BasicTask.java b/cloud-task-common/src/main/java/com/muyu/common/domian/basic/BasicTask.java new file mode 100644 index 0000000..8eac89e --- /dev/null +++ b/cloud-task-common/src/main/java/com/muyu/common/domian/basic/BasicTask.java @@ -0,0 +1,12 @@ +package com.muyu.common.domian.basic; + +import com.muyu.common.domain.DataValue; +import com.muyu.common.domian.basic.abstracts.DataTaskHandler; + +public interface BasicTask { + void set(Long dataValue); + + T get(); + + +} diff --git a/cloud-task-common/src/main/java/com/muyu/common/domian/basic/abstracts/DataTaskAbstracts.java b/cloud-task-common/src/main/java/com/muyu/common/domian/basic/abstracts/DataTaskAbstracts.java new file mode 100644 index 0000000..ceb8ff8 --- /dev/null +++ b/cloud-task-common/src/main/java/com/muyu/common/domian/basic/abstracts/DataTaskAbstracts.java @@ -0,0 +1,17 @@ +package com.muyu.common.domian.basic.abstracts; + +import com.muyu.common.domian.basic.BasicTask; + +public abstract class DataTaskAbstracts implements BasicTask { + + + @Override + public void set(Long taskId) { + DataTaskHandler.set(taskId); + } + + @Override + public T get() { + return DataTaskHandler.get(); + } +} diff --git a/cloud-task-common/src/main/java/com/muyu/common/domian/basic/abstracts/DataTaskHandler.java b/cloud-task-common/src/main/java/com/muyu/common/domian/basic/abstracts/DataTaskHandler.java new file mode 100644 index 0000000..d889a4d --- /dev/null +++ b/cloud-task-common/src/main/java/com/muyu/common/domian/basic/abstracts/DataTaskHandler.java @@ -0,0 +1,19 @@ +package com.muyu.common.domian.basic.abstracts; + +import com.muyu.common.domain.DataValue; + +public class DataTaskHandler { + private static final ThreadLocal threadLocal = new ThreadLocal<>(); + + public static void set(final Long taskId) { + threadLocal.set(taskId); + } + + public static T get() { + return (T) threadLocal.get(); + } + + public static void remove(){ + threadLocal.remove(); + } +} diff --git a/cloud-task-server/src/main/java/com/muyu/task/server/node/NodeDataTask.java b/cloud-task-server/src/main/java/com/muyu/task/server/node/NodeDataTask.java new file mode 100644 index 0000000..1743237 --- /dev/null +++ b/cloud-task-server/src/main/java/com/muyu/task/server/node/NodeDataTask.java @@ -0,0 +1,11 @@ +package com.muyu.task.server.node; + +import com.muyu.common.domian.basic.abstracts.DataTaskAbstracts; +import lombok.extern.log4j.Log4j2; +import org.springframework.stereotype.Component; + +@Component +@Log4j2 +public class NodeDataTask extends DataTaskAbstracts { + +} 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 19ef6c9..819c81c 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 @@ -177,7 +177,10 @@ public class TaskInfoServiceImpl extends ServiceImpl i return "你选择的不是同一个数据库"; } + //联查的方法 String joint = getJoint(taskId); + + Long basicId = taskInputService.selectByBasicId(taskId); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("task_id", taskId); @@ -207,6 +210,7 @@ public class TaskInfoServiceImpl extends ServiceImpl i private Long getCount(String joint, Long basicId) { String sql = " SELECT count(1) FROM " + joint; + System.out.println(sql); Result countResult = datasourceFeign.findCount(basicId, sql); Long data = countResult.getData(); return data; 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 4b2f6ea..71a3024 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 @@ -17,9 +17,9 @@ public class OptimizedPrioritizedThreadPool { private static final int defaultLowThreads = 5; private static final int emergencyThreads = 20; - private static final int emergencyHighThreads = 9; + private static final int emergencyHighThreads = 11; private static final int emergencyMediumThreads = 7; - private static final int emergencyLowThreads = 4; + private static final int emergencyLowThreads = 2; private static volatile boolean inEmergencyMode = false; public static final AtomicInteger activeEmergencyTasks = new AtomicInteger(0); // 紧急任务计数器