微消息隊(duì)列MQTT版主要適用于兩種消息收發(fā)模型,設(shè)備端自收自發(fā)以及設(shè)備端和后臺(tái)服務(wù)交互。這兩種模型涉及設(shè)備端和后端應(yīng)用開(kāi)發(fā)人員。本文為這兩類開(kāi)發(fā)人員提供開(kāi)發(fā)指南的使用指引。
微消息隊(duì)列MQTT版主要包含以下兩種消息收發(fā)模型:
- 設(shè)備端自發(fā)自收模型
該模型適用于移動(dòng)端App或者設(shè)備之間的數(shù)據(jù)通信,典型場(chǎng)景是IM通信場(chǎng)景中兩個(gè)用戶直接聊天消息,以及智能設(shè)備場(chǎng)景中App端控制智能設(shè)備。在該模型中消息的生產(chǎn)者和消費(fèi)者都是分布在移動(dòng)端環(huán)境,通過(guò)MQTT協(xié)議連接到微消息隊(duì)列MQTT版產(chǎn)品。
- 設(shè)備端與后臺(tái)服務(wù)交互模型
該模型下,微消息隊(duì)列MQTT版與其他阿里云產(chǎn)品的交互是通過(guò)規(guī)則實(shí)現(xiàn)的,適用于以下兩種場(chǎng)景:
- 設(shè)備端發(fā)布消息,后臺(tái)服務(wù)接收消息:適用于數(shù)據(jù)上報(bào)的場(chǎng)景,典型場(chǎng)景是智能設(shè)備的狀態(tài)數(shù)據(jù)上報(bào)或者移動(dòng)App的應(yīng)用數(shù)據(jù)采集上報(bào)。在該模型中消息的發(fā)送方是海量的移動(dòng)設(shè)備,一般按照業(yè)務(wù)場(chǎng)景發(fā)送數(shù)據(jù),消息的接收方是后臺(tái)服務(wù),一般部署在云上,例如阿里云ECS,批量消費(fèi)上報(bào)的數(shù)據(jù)。微消息隊(duì)列MQTT版根據(jù)數(shù)據(jù)流出規(guī)則將數(shù)據(jù)導(dǎo)出至其他阿里云產(chǎn)品。
- 后臺(tái)服務(wù)發(fā)布消息,設(shè)備端接收消息:適用于指令下發(fā)場(chǎng)景,典型場(chǎng)景是智能設(shè)備的云端控制或者是移動(dòng)App推送信息。在該模型中消息的發(fā)送方是后臺(tái)應(yīng)用,一般部署在云上,例如阿里云ECS,消息的接收方是移動(dòng)端設(shè)備或者App。微消息隊(duì)列MQTT版根據(jù)數(shù)據(jù)流入規(guī)則接收其他阿里云產(chǎn)品導(dǎo)入的數(shù)據(jù)。
說(shuō)明 當(dāng)前,規(guī)則僅適用于實(shí)現(xiàn)與消息隊(duì)列RocketMQ版的數(shù)據(jù)互通。規(guī)則的詳細(xì)信息,請(qǐng)參見(jiàn)規(guī)則管理。
針對(duì)設(shè)備端的開(kāi)發(fā)人員,請(qǐng)參見(jiàn)終端開(kāi)發(fā)指南。該指南包含設(shè)備端的API參考、SDK參考以及權(quán)限管理內(nèi)容。
針對(duì)業(yè)務(wù)后臺(tái)應(yīng)用的開(kāi)發(fā)人員,請(qǐng)參見(jiàn)云端開(kāi)發(fā)指南。該指南包含服務(wù)端的OpenAPI參考、SDK參考以及權(quán)限管理內(nèi)容。