123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- package com.qmth.themis.exam.start;
- import com.qmth.themis.business.constant.SpringContextHolder;
- import com.qmth.themis.business.constant.SystemConstant;
- import com.qmth.themis.exam.config.DictionaryConfig;
- import com.qmth.themis.exam.websocket.WebSocketOeServer;
- import com.qmth.themis.mq.enums.MqGroupEnum;
- import com.qmth.themis.mq.enums.MqTagEnum;
- import com.qmth.themis.mq.enums.MqTopicEnum;
- import com.qmth.themis.mq.listener.RocketMessageConsumer;
- import com.qmth.themis.mq.templete.impl.*;
- import org.apache.rocketmq.common.protocol.heartbeat.MessageModel;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.boot.CommandLineRunner;
- import org.springframework.stereotype.Component;
- import javax.annotation.Resource;
- import java.util.Map;
- import java.util.Objects;
- /**
- * @Description: 服务启动时初始化运行,哪个微服务模块需要则拿此模版去用
- * @Param:
- * @return:
- * @Author: wangliang
- * @Date: 2020/7/3
- */
- @Component
- public class StartRunning implements CommandLineRunner {
- private final static Logger log = LoggerFactory.getLogger(StartRunning.class);
- @Resource
- RocketMessageConsumer rocketMessageConsumer;
- @Value("${rocketmq.name-server}")
- String nameServer;
- @Resource
- DictionaryConfig dictionaryConfig;
- @Override
- public void run(String... args) throws Exception {
- log.info("服务器启动时执行 start");
- Map<String, String> map = dictionaryConfig.mqDomain().getGroupMap();
- /**
- * session mq start
- */
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.sessionConsumerWebGroup.getCode() : map.get(MqGroupEnum.sessionConsumerWebGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.web.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(SessionConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.sessionConsumerWinGroup.getCode() : map.get(MqGroupEnum.sessionConsumerWinGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.win.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(SessionConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.sessionConsumerMacGroup.getCode() : map.get(MqGroupEnum.sessionConsumerMacGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.mac.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(SessionConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.sessionConsumerWxappGroup.getCode() : map.get(MqGroupEnum.sessionConsumerWxappGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.wxapp.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(SessionConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.sessionConsumerIosGroup.getCode() : map.get(MqGroupEnum.sessionConsumerIosGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.ios.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(SessionConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.sessionConsumerAndroidGroup.getCode() : map.get(MqGroupEnum.sessionConsumerAndroidGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.android.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(SessionConcurrentlyImpl.class));
- /**
- * session mq end
- */
- /**
- * userLog mq start
- */
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.userLogConsumerUserGroup.getCode() : map.get(MqGroupEnum.userLogConsumerUserGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.user.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(UserLogConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.userLogConsumerStudentGroup.getCode() : map.get(MqGroupEnum.userLogConsumerStudentGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.student.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(UserLogConcurrentlyImpl.class));
- /**
- * userLog mq end
- */
- /**
- * task mq start
- */
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.taskConsumerExamStudentImportGroup.getCode() : map.get(MqGroupEnum.taskConsumerExamStudentImportGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.examStudentImport.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(TaskConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.taskConsumerRoomCodeImportGroup.getCode() : map.get(MqGroupEnum.taskConsumerRoomCodeImportGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.roomCodeImport.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(TaskConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.taskConsumerRoomCodeExportGroup.getCode() : map.get(MqGroupEnum.taskConsumerRoomCodeExportGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.roomCodeExport.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(TaskConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.taskConsumerExamPaperImportGroup.getCode() : map.get(MqGroupEnum.taskConsumerExamPaperImportGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.examPaperImport.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(TaskConcurrentlyImpl.class));
- /**
- * task mq end
- */
- /**
- * websocket mq start
- */
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.websocketConsumerUnNormalGroup.getCode() : map.get(MqGroupEnum.websocketConsumerUnNormalGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.unNormal.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(WebsocketUnNormalConcurrentlyImpl.class));
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.websocketConsumerOeGroup.getCode() : map.get(MqGroupEnum.websocketConsumerOeGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.oe.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(WebSocketOeServer.class));
- /**
- * websocket mq end
- */
- //计算客观分
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.calculateObjectiveScoreGroup.getCode() : map.get(MqGroupEnum.calculateObjectiveScoreGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.calculateObjectiveScore.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(CalculateObjectiveScoreConcurrentlyImpl.class));
- //人脸验证保存
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.faceVerifySaveGroup.getCode() : map.get(MqGroupEnum.faceVerifySaveGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.faceVerifySave.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(FaceVerifyConcurrentlyImpl.class));
- //活体验证保存
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.livenessVerifySaveGroup.getCode() : map.get(MqGroupEnum.livenessVerifySaveGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.livenessVerifySave.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(LivenessVerifyConcurrentlyImpl.class));
- //考试断点记录
- rocketMessageConsumer.setRocketMQConsumer(nameServer, Objects.isNull(map) ? MqGroupEnum.examBreakHistoryGroup.getCode() : map.get(MqGroupEnum.examBreakHistoryGroup.name()), Objects.isNull(map) ? MqTopicEnum.themisTopic.getCode() : map.get("name"), MqTagEnum.examBreakHistory.name(), MessageModel.CLUSTERING, SpringContextHolder.getBean(ExamBreakHistoryConcurrentlyImpl.class));
- SystemConstant.initTempFiles();
- log.info("服务器启动时执行 end");
- }
- }
|