From 945694a410fa70ac2d99e8b5bc370d201d9201d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B5=85=E6=A2=A6?= <1101766085@qq.com> Date: Tue, 11 Jan 2022 08:57:56 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20mica-mqtt-core=20=E6=94=BE?= =?UTF-8?q?=E5=BC=80=20tio=20=E9=98=9F=E5=88=97=E9=85=8D=E7=BD=AE=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mqtt/core/server/MqttServerCreator.java | 26 +++++++++++++++++++ .../http/core/MqttWebServerAioHandler.java | 3 ++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/MqttServerCreator.java b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/MqttServerCreator.java index e429cb8..5651d43 100644 --- a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/MqttServerCreator.java +++ b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/MqttServerCreator.java @@ -160,6 +160,14 @@ public class MqttServerCreator { * 节点名称,用于处理集群 */ private String nodeName; + /** + * 是否用队列发送 + */ + public boolean useQueueSend = true; + /** + * 是否用队列解码(系统初始化时确定该值,中途不要变更此值,否则在切换的时候可能导致消息丢失) + */ + public boolean useQueueDecode = false; public String getName() { return name; @@ -410,6 +418,24 @@ public class MqttServerCreator { return this; } + public boolean isUseQueueSend() { + return useQueueSend; + } + + public MqttServerCreator useQueueSend(boolean useQueueSend) { + this.useQueueSend = useQueueSend; + return this; + } + + public boolean isUseQueueDecode() { + return useQueueDecode; + } + + public MqttServerCreator useQueueDecode(boolean useQueueDecode) { + this.useQueueDecode = useQueueDecode; + return this; + } + public MqttServer build() { Objects.requireNonNull(this.messageListener, "Mqtt Server message listener cannot be null."); // 默认的节点名称,用于集群 diff --git a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/http/core/MqttWebServerAioHandler.java b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/http/core/MqttWebServerAioHandler.java index 03a2bbf..bf83e1e 100644 --- a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/http/core/MqttWebServerAioHandler.java +++ b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/http/core/MqttWebServerAioHandler.java @@ -209,6 +209,7 @@ import org.tio.utils.hutool.StrUtil; import org.tio.websocket.common.*; import org.tio.websocket.common.util.BASE64Util; import org.tio.websocket.common.util.SHA1Util; +import org.tio.websocket.server.WsServerAioHandler; import org.tio.websocket.server.handler.IWsMsgHandler; import java.io.UnsupportedEncodingException; @@ -222,7 +223,7 @@ import java.util.*; * @author L.cm */ public class MqttWebServerAioHandler implements ServerAioHandler { - private static Logger log = LoggerFactory.getLogger(org.tio.websocket.server.WsServerAioHandler.class); + private static final Logger log = LoggerFactory.getLogger(WsServerAioHandler.class); /** * value: List */ -- GitLab