From ea68e8f8c00c0178037a9f1cc6dc1663bde913b8 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 03 七月 2021 17:49:35 +0800 Subject: [PATCH] 推送服务完善 --- service-push/src/main/java/com/ks/push/PushApplication.java | 35 ++++++++++++++++++++++++++++++++++- 1 files changed, 34 insertions(+), 1 deletions(-) diff --git a/service-push/src/main/java/com/ks/push/PushApplication.java b/service-push/src/main/java/com/ks/push/PushApplication.java index 1c667a0..6deeec7 100644 --- a/service-push/src/main/java/com/ks/push/PushApplication.java +++ b/service-push/src/main/java/com/ks/push/PushApplication.java @@ -1,5 +1,7 @@ package com.ks.push; +import com.ks.push.consumer.mq.PushTaskConsumer; +import com.ks.push.pojo.DO.PushPlatform; import org.apache.dubbo.config.spring.context.annotation.EnableDubbo; import org.mybatis.spring.annotation.MapperScan; import org.slf4j.Logger; @@ -8,18 +10,49 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; +import org.springframework.context.ApplicationListener; +import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.transaction.annotation.EnableTransactionManagement; +import org.yeshi.utils.mq.JobThreadExecutorServiceImpl; + +import javax.annotation.Resource; @SpringBootApplication @EnableTransactionManagement @MapperScan(basePackages = "com.ks.push.mapper") @EnableDubbo(scanBasePackages = "com.ks.push.service.remote") -public class PushApplication { +public class PushApplication implements ApplicationListener<ContextRefreshedEvent> { private final static Logger logger = LoggerFactory.getLogger(PushApplication.class); + + @Resource + private PushTaskConsumer pushTaskConsumer; public static void main(String[] args) { SpringApplication.run(PushApplication.class, args); logger.info("搴旂敤鍚姩鎴愬姛"); } + + @Override + public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) { + logger.info("瀹瑰櫒鍔犺浇瀹屾瘯"); + initMQMsgConsumer(); + } + + private void initMQMsgConsumer() { + final int THREAD_NUM = 3; + for (PushPlatform pushPlatform : PushPlatform.values()) { + //鍒涘缓涓夋潯闃熷垪澶勭悊 + for (int i = 0; i < THREAD_NUM; i++) { + new JobThreadExecutorServiceImpl().run(new Runnable() { + @Override + public void run() { + pushTaskConsumer.consumeMsg(pushPlatform); + } + }); + } + } + + } + } -- Gitblit v1.8.0