From e9067eda6beee7a090f2e25dcf2b80aa0743c509 Mon Sep 17 00:00:00 2001 From: byteblogs168 <598092184@qq.com> Date: Thu, 18 Jan 2024 23:14:03 +0800 Subject: [PATCH] =?UTF-8?q?feat:=202.6.0=201.=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81=E7=BA=BF=E7=A8=8B=E6=B1=A0=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/common/akka/ActorGenerator.java | 6 ++-- .../AbstractClientCallbackHandler.java | 28 ------------------- .../support/handler/JobTaskBatchHandler.java | 1 - .../src/main/resources/easyretry.conf | 21 ++++++++++++++ 4 files changed, 25 insertions(+), 31 deletions(-) diff --git a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/akka/ActorGenerator.java b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/akka/ActorGenerator.java index 4c74fa7aa..b82c8fd39 100644 --- a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/akka/ActorGenerator.java +++ b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/akka/ActorGenerator.java @@ -55,6 +55,8 @@ public class ActorGenerator { private static final String JOB_TASK_EXECUTOR_DISPATCHER = "akka.actor.job-task-executor-dispatcher"; private static final String JOB_TASK_EXECUTOR_RESULT_DISPATCHER = "akka.actor.job-task-executor-result-dispatcher"; private static final String JOB_TASK_EXECUTOR_CALL_CLIENT_DISPATCHER = "akka.actor.job-task-executor-call-client-dispatcher"; + private static final String WORKFLOW_TASK_DISPATCHER = "akka.actor.workflow-task-prepare-dispatcher"; + private static final String WORKFLOW_TASK_EXECUTOR_DISPATCHER = "akka.actor.workflow-task-executor-dispatcher"; /*----------------------------------------分布式任务调度 END----------------------------------------*/ @@ -203,7 +205,7 @@ public class ActorGenerator { */ public static ActorRef workflowTaskPrepareActor() { return getJobActorSystem().actorOf(getSpringExtension().props(WORKFLOW_TASK_PREPARE_ACTOR) - .withDispatcher(JOB_TASK_DISPATCHER)); + .withDispatcher(WORKFLOW_TASK_DISPATCHER)); } /** @@ -228,7 +230,7 @@ public class ActorGenerator { return getJobActorSystem() .actorOf(getSpringExtension() .props(WORKFLOW_EXECUTOR_ACTOR) - .withDispatcher(JOB_TASK_EXECUTOR_DISPATCHER) + .withDispatcher(WORKFLOW_TASK_EXECUTOR_DISPATCHER) ); } diff --git a/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/callback/AbstractClientCallbackHandler.java b/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/callback/AbstractClientCallbackHandler.java index 3062ea83d..6bc8d8f6d 100644 --- a/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/callback/AbstractClientCallbackHandler.java +++ b/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/callback/AbstractClientCallbackHandler.java @@ -5,7 +5,6 @@ import cn.hutool.core.util.StrUtil; import com.aizuda.easy.retry.common.core.enums.JobTaskStatusEnum; import com.aizuda.easy.retry.common.log.EasyRetryLog; import com.aizuda.easy.retry.server.common.akka.ActorGenerator; -import com.aizuda.easy.retry.server.common.dto.RegisterNodeInfo; import com.aizuda.easy.retry.server.common.util.ClientInfoUtils; import com.aizuda.easy.retry.server.job.task.dto.LogMetaDTO; import com.aizuda.easy.retry.server.job.task.dto.RealJobExecutorDTO; @@ -106,33 +105,6 @@ public abstract class AbstractClientCallbackHandler implements ClientCallbackHan return null; } - private void failRetry(ClientCallbackContext context) { - - if (context.getTaskStatus().equals(JobTaskStatusEnum.FAIL.getStatus())) { - JobTask jobTask = jobTaskMapper.selectById(context.getTaskId()); - Job job = jobMapper.selectById(context.getJobId()); - if (jobTask == null || job == null) { - return; - } - - if (jobTask.getRetryCount() < job.getMaxRetryTimes()) { - // 更新重试次数 - JobTask updateJobTask = new JobTask(); - updateJobTask.setRetryCount(1); - boolean success = SqlHelper.retBool(jobTaskMapper.update(updateJobTask, Wrappers.lambdaUpdate() - .lt(JobTask::getRetryCount, job.getMaxRetryTimes()) - .eq(JobTask::getId, context.getTaskId()) - )); - - if (success) { - - } - - return; - } - } - } - protected abstract void doCallback(ClientCallbackContext context); @Override diff --git a/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/handler/JobTaskBatchHandler.java b/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/handler/JobTaskBatchHandler.java index 3582dd053..c7cbefe31 100644 --- a/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/handler/JobTaskBatchHandler.java +++ b/easy-retry-server/easy-retry-server-job-task/src/main/java/com/aizuda/easy/retry/server/job/task/support/handler/JobTaskBatchHandler.java @@ -91,7 +91,6 @@ public class JobTaskBatchHandler { taskExecuteDTO.setWorkflowTaskBatchId(completeJobBatchDTO.getWorkflowTaskBatchId()); taskExecuteDTO.setTaskExecutorScene(JobTaskExecutorSceneEnum.AUTO_WORKFLOW.getType()); taskExecuteDTO.setParentId(completeJobBatchDTO.getWorkflowNodeId()); - // 这里取第一个的任务执行结果 taskExecuteDTO.setTaskBatchId(completeJobBatchDTO.getTaskBatchId()); ActorRef actorRef = ActorGenerator.workflowTaskExecutorActor(); actorRef.tell(taskExecuteDTO, actorRef); diff --git a/easy-retry-server/easy-retry-server-starter/src/main/resources/easyretry.conf b/easy-retry-server/easy-retry-server-starter/src/main/resources/easyretry.conf index b8cefac70..ea1844eae 100644 --- a/easy-retry-server/easy-retry-server-starter/src/main/resources/easyretry.conf +++ b/easy-retry-server/easy-retry-server-starter/src/main/resources/easyretry.conf @@ -99,5 +99,26 @@ akka { throughput = 10 } + workflow-task-prepare-dispatcher { + type = "Dispatcher" + executor = "thread-pool-executor" + thread-pool-executor { + core-pool-size-min = 32 + core-pool-size-factor = 2.0 + core-pool-size-max = 64 + } + throughput = 10 + } + + workflow-task-executor-dispatcher { + type = "Dispatcher" + executor = "thread-pool-executor" + thread-pool-executor { + core-pool-size-min = 32 + core-pool-size-factor = 2.0 + core-pool-size-max = 64 + } + throughput = 10 + } } }