什么是服務(wù)端訂閱
服務(wù)端可以直接訂閱產(chǎn)品下多種類型的消息,例如設(shè)備上報(bào)消息、設(shè)備狀態(tài)變化通知、設(shè)備生命周期變更、網(wǎng)關(guān)發(fā)現(xiàn)子設(shè)備上報(bào)、設(shè)備拓?fù)潢P(guān)系變更等。配置服務(wù)端訂閱后,物聯(lián)網(wǎng)平臺(tái)會(huì)將產(chǎn)品下所有設(shè)備中已訂閱類型的消息,轉(zhuǎn)發(fā)至您的服務(wù)器。
使用場(chǎng)景
服務(wù)端訂閱可應(yīng)用于以下場(chǎng)景:
服務(wù)端單純的接收設(shè)備數(shù)據(jù)的場(chǎng)景,并且適用于高并發(fā)場(chǎng)景。
服務(wù)端接收產(chǎn)品下全部設(shè)備的訂閱數(shù)據(jù)。
如果您有多個(gè)服務(wù)器消費(fèi)同一個(gè)產(chǎn)品的訂閱消息,消息會(huì)隨機(jī)轉(zhuǎn)發(fā)至某個(gè)服務(wù)器。
服務(wù)端訂閱與規(guī)則引擎數(shù)據(jù)流轉(zhuǎn)的使用場(chǎng)景和能力對(duì)比,請(qǐng)參見(jiàn)數(shù)據(jù)流轉(zhuǎn)方案對(duì)比。
使用AMQP服務(wù)端訂閱消息
AMQP(Advanced Message Queuing Protocol)即高級(jí)消息隊(duì)列協(xié)議。您配置AMQP服務(wù)端訂閱后,物聯(lián)網(wǎng)平臺(tái)會(huì)將產(chǎn)品下所有已訂閱類型的消息,通過(guò)AMQP通道推送至您的服務(wù)器。
AMQP服務(wù)端訂閱消息流轉(zhuǎn)流程如下圖所示。
AMQP服務(wù)端訂閱優(yōu)勢(shì):
支持多消費(fèi)組。同一個(gè)賬號(hào),可以在開(kāi)發(fā)環(huán)境下使消費(fèi)組A訂閱產(chǎn)品A,同時(shí)在正式環(huán)境下使消費(fèi)組B訂閱產(chǎn)品B。
說(shuō)明如果多個(gè)不同消費(fèi)組同時(shí)訂閱產(chǎn)品B,則不同消費(fèi)組可同時(shí)收到來(lái)自設(shè)備B的相同信息。
方便排查問(wèn)題。支持查看客戶端狀態(tài)、查看堆積和消費(fèi)速率。
線性擴(kuò)展。在消費(fèi)者能力足夠,即客戶端機(jī)器足夠的情況下,可輕松線性擴(kuò)展推送能力。
實(shí)時(shí)消息優(yōu)先推送,消息堆積不會(huì)影響服務(wù)。
設(shè)備實(shí)時(shí)消息直接推送,推送限流或失敗時(shí)進(jìn)入堆積隊(duì)列,堆積態(tài)消息采用降級(jí)模式,不會(huì)影響實(shí)時(shí)推送能力。
即使消費(fèi)者的客戶端宕機(jī),或因消費(fèi)能力不足堆積了消息,消費(fèi)端恢復(fù)后,設(shè)備生成的消息也可以和堆積消息并行發(fā)送,使設(shè)備優(yōu)先恢復(fù)實(shí)時(shí)推送消息狀態(tài)。
使用AMQP服務(wù)端訂閱,需先在控制臺(tái)配置AMQP服務(wù)端訂閱,請(qǐng)參見(jiàn)配置AMQP服務(wù)端訂閱。然后開(kāi)發(fā)AMQP客戶端,接入物聯(lián)網(wǎng)平臺(tái),接收消息,請(qǐng)參見(jiàn)AMQP客戶端接入說(shuō)明。
使用AMQP服務(wù)端訂閱,物聯(lián)網(wǎng)平臺(tái)會(huì)根據(jù)推送的消息數(shù)量進(jìn)行計(jì)費(fèi)。消息計(jì)費(fèi)方式,請(qǐng)參見(jiàn)消息通信計(jì)費(fèi)和規(guī)則引擎TPS。
使用MNS服務(wù)端訂閱消息
物聯(lián)網(wǎng)平臺(tái)將訂閱的消息推送到輕量消息隊(duì)列(原 MNS) SMQ(Simple Message Queue (formerly MNS))的隊(duì)列中,您的服務(wù)器MNS客戶端通過(guò)監(jiān)聽(tīng)MNS隊(duì)列接收設(shè)備消息。
MNS服務(wù)端訂閱消息流轉(zhuǎn)流程如下圖所示。
使用消息服務(wù)訂閱設(shè)備消息的具體配置方法,請(qǐng)參見(jiàn)使用消息服務(wù)(MNS)訂閱設(shè)備消息。
消息服務(wù)會(huì)對(duì)創(chuàng)建的隊(duì)列和接收的消息收取費(fèi)用。消息服務(wù)計(jì)費(fèi)和使用,請(qǐng)參見(jiàn)消息服務(wù)文檔。