From 157c26f5188c7ed62a4547f7e3b5a5a3e3ed7729 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期日, 08 十月 2023 09:40:47 +0800
Subject: [PATCH] 优化mqtt生产者取消消费者订阅
---
src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java | 28 ++++++++++++++++------------
1 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
index 7208846..2714637 100644
--- a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
+++ b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
@@ -3,14 +3,14 @@
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.ard.alarm.stealelec.domain.ArdAlarmStealelec;
-import com.ard.utils.mqtt.MqttConsumer;
+import com.ard.utils.http.HttpUtils;
+import com.ard.utils.mqtt.MqttProducer;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-import javax.annotation.Resource;
+
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -24,12 +24,14 @@
*/
@Slf4j(topic = "stealAlarm")
@Service
-public class StealElecAlarmService{
- @Resource
- RestTemplate restTemplate;
+public class StealElecAlarmService {
+
@Value("${spring.stealelec.url}")
private String stealElecUrl;
- List<String> tempList=new ArrayList<>();
+ @Value("${spring.stealelec.enabled}")
+ private Boolean enabled;
+ List<String> tempList = new ArrayList<>();
+
/**
* @鎻忚堪 鑾峰彇api鏁版嵁鎺ㄩ�乵qtt
* @鍙傛暟 []
@@ -39,10 +41,13 @@
* @淇敼浜哄拰鍏跺畠淇℃伅
*/
@Async("alarm")
- @Scheduled(cron="0/5 * * * * ?")
+ @Scheduled(cron = "0/5 * * * * ?")
public void alarmHandler() {
try {
- String allAlarmData = restTemplate.getForObject(stealElecUrl, String.class);
+ if (!enabled) {
+ return;
+ }
+ String allAlarmData = HttpUtils.sendGet(stealElecUrl);
//鍓旈櫎鎵�鏈塡绗﹀彿
String message = allAlarmData.replaceAll("\\\\", "");
//鍓旈櫎鏁翠釜瀛楃涓查灏惧弻寮曞彿
@@ -60,11 +65,10 @@
String JSONStr = JSON.toJSONString(object);
//杞垚瀹炰綋瀵硅薄
ArdAlarmStealelec wd = JSON.parseObject(JSONStr, ArdAlarmStealelec.class);
- if(tempList.contains(wd.getId()))
- {
+ if (tempList.contains(wd.getId())) {
continue;
}
- MqttConsumer.publish(2,false,"stealelec", JSON.toJSONString(wd));
+ MqttProducer.publish(2, false, "stealelec", JSON.toJSONString(wd));
tempList.add(wd.getId());
}
}
--
Gitblit v1.9.3