From 87e835241866487e077997ce094b2ee8b4fb8d2e Mon Sep 17 00:00:00 2001 From: thinkgem Date: Sun, 20 Mar 2022 14:11:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=9A=E7=BA=BF=E7=A8=8B=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E4=B8=BA=E7=BA=BF=E7=A8=8B=E6=B1=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/cms/service/ArticleService.java | 16 ++++++++++++---- .../modules/msg/service/MsgInnerService.java | 16 ++++++++++++---- .../com/jeesite/modules/sys/utils/LogUtils.java | 1 - 3 files changed, 24 insertions(+), 9 deletions(-) diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java b/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java index 872c67a7..8a54f221 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java @@ -8,6 +8,10 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -28,6 +32,8 @@ import com.jeesite.modules.cms.utils.CmsUtils; import com.jeesite.modules.file.utils.FileUploadUtils; import com.jeesite.modules.sys.utils.UserUtils; +import io.netty.util.concurrent.DefaultThreadFactory; + /** * 文章表Service * @author 长春叭哥、ThinkGem @@ -39,6 +45,10 @@ public class ArticleService extends CrudService { @Autowired private ArticleDataDao articleDataDao; + + private static ExecutorService updateExpiredWeightThreadPool = new ThreadPoolExecutor(5, 20, + 60L, TimeUnit.SECONDS, new LinkedBlockingQueue<>(), + new DefaultThreadFactory("cms-update-expired-weight")); /** * 获取单条数据 @@ -77,14 +87,12 @@ public class ArticleService extends CrudService { */ @Override public Page
findPage(Article article) { - Thread thread = new Thread("cms-update-expired-weight") { + updateExpiredWeightThreadPool.submit(new Runnable() { @Override public void run() { updateExpiredWeight(article); } - }; - thread.setDaemon(true); - thread.start(); + }); return super.findPage(article); } diff --git a/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java b/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java index 99510e2f..5b605d2b 100644 --- a/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java +++ b/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java @@ -6,6 +6,10 @@ package com.jeesite.modules.msg.service; import java.util.Date; import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -34,6 +38,8 @@ import com.jeesite.modules.sys.entity.EmpUser; import com.jeesite.modules.sys.entity.User; import com.jeesite.modules.sys.service.EmpUserService; +import io.netty.util.concurrent.DefaultThreadFactory; + /** * 内部消息Service * @author ThinkGem @@ -47,6 +53,10 @@ public class MsgInnerService extends CrudService { private EmpUserService empUserService; @Autowired private MsgInnerRecordDao msgInnerRecordDao; + + private static ExecutorService msgPushThreadPool = new ThreadPoolExecutor(5, 20, + 60L, TimeUnit.SECONDS, new LinkedBlockingQueue<>(), + new DefaultThreadFactory("cms-update-expired-weight")); /** * 获取单条数据 @@ -191,7 +201,7 @@ public class MsgInnerService extends CrudService { }); // 手动触发消息推送任务 if (Global.TRUE.equals(Global.getProperty("msg.realtime.enabled"))){ - Thread thread = new Thread("msg-push-task-execute"){ + msgPushThreadPool.submit(new Runnable() { public void run() { try{ MsgPushUtils.getMsgPushTask().execute(); @@ -199,9 +209,7 @@ public class MsgInnerService extends CrudService { logger.error("实时消息发送失败,推送服务配置不正确。", ex); } } - }; - thread.setDaemon(true); - thread.start(); + }); } } diff --git a/modules/core/src/main/java/com/jeesite/modules/sys/utils/LogUtils.java b/modules/core/src/main/java/com/jeesite/modules/sys/utils/LogUtils.java index 42b8f449..60442c73 100644 --- a/modules/core/src/main/java/com/jeesite/modules/sys/utils/LogUtils.java +++ b/modules/core/src/main/java/com/jeesite/modules/sys/utils/LogUtils.java @@ -48,7 +48,6 @@ import io.netty.util.concurrent.DefaultThreadFactory; */ public class LogUtils { - // 采用线程池优化性能 private static ExecutorService logThreadPool = new ThreadPoolExecutor(5, 20, 60L, TimeUnit.SECONDS, new LinkedBlockingQueue<>(), new DefaultThreadFactory("log-save"));