教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

MQTT中怎樣發(fā)布/訂閱、主題、會話?

更新時間:2023年06月27日15時04分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓

MQTT 是基于 發(fā)布(Publish)/訂閱(Subscribe) 模式來進行通信及數(shù)據(jù)交換的,與 HTTP 的 請求(Request)/應答(Response) 的模式有本質的不同。

訂閱者(Subscriber) 會向 消息服務器(Broker) 訂閱一個 主題(Topic) 。成功訂閱后,消息服務器會將該主題下的消息轉發(fā)給所有的訂閱者。

主題(Topic)以 ‘/’ 為分隔符區(qū)分不同的層級。包含通配符 ‘+’ 或 ‘#’ 的主題又稱為 主題過濾器(Topic Filters); 不含通配符的稱為 主題名(Topic Names) 例如:

chat/room/1 

sensor/10/temperature 

sensor/+/temperature 

$SYS/broker/metrics/packets/received 

$SYS/broker/metrics/#
'+': 表示通配一個層級,例如a/+,匹配a/x, a/y
'#': 表示通配多個層級,例如a/#,匹配a/x, a/b/c/d 
注: ‘+’ 通配一個層級,’#’ 通配多個層級(必須在末尾)。

發(fā)布者(Publisher) 只能向 ‘主題名’ 發(fā)布消息,訂閱者(Subscriber) 則可以通過訂閱 ‘主題過濾器’ 來通配多個主 題名稱。

會話(Session)

每個客戶端與服務器建立連接后就是一個會話,客戶端和服務器之間有狀態(tài)交互。會話存在于一個網絡之間,也可能在客戶端和服務器之間跨越多個連續(xù)的網絡連接。

0 分享到:
和我們在線交談!