From 3496700a5ba18be8ca0590a79e21a867782d1ea9 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Mon, 01 Jun 2026 16:56:57 +0800
Subject: [PATCH] 优化
---
ard-modules/ard-modules-work/src/main/java/com/ard/work/config/AsyncConfiguration.java | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/ard-modules/ard-modules-work/src/main/java/com/ard/work/config/AsyncConfiguration.java b/ard-modules/ard-modules-work/src/main/java/com/ard/work/config/AsyncConfiguration.java
index 896ac64..cdc6717 100644
--- a/ard-modules/ard-modules-work/src/main/java/com/ard/work/config/AsyncConfiguration.java
+++ b/ard-modules/ard-modules-work/src/main/java/com/ard/work/config/AsyncConfiguration.java
@@ -64,4 +64,21 @@
executor.initialize();
return executor;
}
+
+ /**
+ * WebSocket推送线程池(避免慢客户端阻塞调度线程)
+ * DiscardOldestPolicy: 推送任务允许丢弃旧消息以保证实时性
+ */
+ @Bean("wsPushExecutor")
+ public ThreadPoolTaskExecutor wsPushExecutor() {
+ ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+ executor.setCorePoolSize(4);
+ executor.setMaxPoolSize(16);
+ executor.setQueueCapacity(2000);
+ executor.setKeepAliveSeconds(60);
+ executor.setThreadNamePrefix("ws-push-");
+ executor.setRejectedExecutionHandler(new ThreadPoolExecutor.DiscardOldestPolicy());
+ executor.initialize();
+ return executor;
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3