怎樣使用阿里雲消息服務?

阿里雲消息服務使用教程:阿里雲大學——開發者課堂
阿里雲消息服務(Message Service)是一種高效、可靠、安全、便捷、可彈性擴展的分佈式消息服務。MNS可以幫助應用開發者在他們應用的分佈式組件上自由的傳遞數據、通知消息,構建鬆耦合系統。
消息服務同時支持各類類型消息推送,其中和短信先後端的無縫整合更高效的爲用戶提供了大批量短信發送能力。
消息服務提供了兩種模型:隊列模型;主題模型
兩種功能模型的區別:
隊列模型支持一對一發送和接收消息;
主題模型支持一對多發佈和訂閱消息,而且支持多種消息推送方式。前端

隊列模型簡介

隊列模型旨在提供高可靠高併發的一對一消費模型。即隊列中的每一條消息都只可以被某一個消費者進行消費。後端

隊列模型特性

A. 豐富的隊列屬性配置
咱們提供了豐富的隊列屬性配置選項,您能夠進行隊列屬性的個性化配置來知足不一樣的應用場景,支持:普通隊列、延遲隊列、優先級隊列等多種隊列模式。安全

B. 支持海量併發訪問
支持多個生產者和消費者併發訪問同一個隊列,並能確保某條消息在取出以後的特定時間段內,沒法被其餘消費者得到。能夠根據業務需求自由伸縮併發訪問數。網絡

C. 消息投遞保障
在消息有效期內,確保消息至少能被成功消費一次。接入阿里雲帳號體系,用戶間資源隔離,確保您隊列中的消息不會被非法獲取。併發

D. 分佈式事務消息
完善的分佈式環境下事務消息解決方案。less

E. 支持日誌管理
能夠經過日誌管理的方式,查看每一條消息發送、接收和刪除的完整生命週期。用戶能夠經過日誌管理,方便的進行問題調查。運維

F. 支持雲監控
用戶能夠經過雲監控查看隊列狀況,而且能夠自定義報警項,當隊列狀況不符合指望時,可以及時知曉。異步

主題模型簡介

主題訂閱模型旨在提供一對多的發佈訂閱以及消息通知功能,支持用戶實現一站式多種消息通知方式:
推送到用戶指定 HttpServer
推送到用戶指定的 Queue(用戶能夠從該 Queue 拉取消息)
推送到郵件(組)
推送到短信(列表)
WebSocket方式推送(即將支持)
移動推送(計劃支持)分佈式

主題模型特性

A. 支持通知消息
1)MNS服務端主動將消息推送給用戶指定的回調地址(消息通知地址),消除用戶端程序沒必要要的輪詢和資源消耗。用戶能夠將資源集中在處理自身業務的邏輯中。而且也能夠避免對其餘消息服務產品客戶端的依賴,避免由於過多代碼引入從而影響自身服務的穩定性。
2)同時,對於因爲網絡或者其餘緣由形成用戶不方便提供回調地址的,MNS也支持將消息推送到 Queue 中,用戶仍然能夠直接到 Queue 中獲取消息。原先使用「隊列模型」的消費者,能夠無縫消費主題中的消息。高併發

B. 支持一對多廣播消息
1)發佈到主題中的一條消息能夠同時被多個訂閱者訂閱,會被按照多個訂閱指定的推送方式和 Endpoint 地址推送過去。用戶同時能夠從多個(種)渠道接收到這條消息。
2)用戶僅需發佈一次,就能夠將消息推送到多個接收端,保證了消息發佈的原子性。

C. 支持消息標籤過濾
在支持一對多廣播消息的基礎上,在訂閱中還支持對消息進行過濾。能夠訂閱 Topic 中帶有特定標籤的消息。在建立訂閱時指定消息過濾標籤,而後 PublshMessage 時指定消息標籤,MNS在推送消息時會根據標籤進行過濾,僅推送消息標籤與訂閱中指定的過濾標籤匹配的消息到指定 Endpoint 上。

D. 支持多種投遞方式
MNS支持多種消息投遞方式,包括但不限於:
推送到 Http(s)Server,詳見:HttpEndpoint 處理,HttpEndpoint 簽名,HttpEndpoint Java,HttpEndpoint 本地 Debug 工具。
推送到 Queue,詳見:Queue 推送,廣播拉取消息。
推送到郵箱,詳見:郵件推送。
推送到短信,詳見:短信推送。
接入 WebSocket 推送(即將支持)。
接入移動推送(計劃支持)。

E. 消息投遞保障
在消息有效期內,保證發佈到 Topic 中的消息會按照指定的策略和格式推送給用戶程序。推送策略包括:
退避重試(BACKOFF_RETRY)
重試 3 次,每次重試的間隔時間是 10秒 到 20秒 之間的隨機值
指數衰減重試(EXPONENTIAL_DECAY_RETRY),
重試 176 次,每次重試的間隔時間指數遞增至 512秒,總計重試時間爲1天;每次重試的具體間隔爲:1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 512 … 512 秒 (共167個512)
推送消息格式包括:
XML:消息體爲XML格式,包含消息正文和消息屬性;
JSON:消息體爲JSON格式,包含消息正文和消息屬性;
SIMPLIFIED (精簡格式,即文本格式):消息體即用戶發佈的消息,不包含任何屬性信息;

F.支持雲產品嗎時間通知
MNS提供了事件通知的功能,用戶能夠經過在MNS上建立事件通知的規則,來關注其餘阿里雲產品指定資源上產生的事件,而且由MNS以消息的方式主動推送到指定的接收端。目前已接入OSS,用戶能夠經過事件通知功能監聽和處理 OSS 中 Bucket 的管理事件、Bucket 中 Object 的建立、刪除、更新等事件。

G. 支持日誌管理
能夠經過日誌管理的方式,查看每一條消息發佈進主題的記錄,以及每一次推送給用戶的記錄,包括重試推送的記錄、推送結果等。可以展現每條消息的生命週期。用戶能夠經過日誌管理,方便的進行問題調查。

H. 支持雲監控
能夠經過雲監控查看消息推送的記錄,及時查看和監控消息的推送狀況,當推送失敗次數比較多時,可以經過添加報警的方式及時知曉。

短信發送能力

消息服務同時具有通訊服務的能力,支持快速發送短信驗證碼、短信通知、推廣短信。完美支撐雙11期間的2億用戶發送6億短信。三網合一專屬通道,與工信部攜號轉網平臺實時互聯。電信級運維保證,時時監控自動切換,到達率高達99%。

短信通知和驗證碼

大容量高併發:支撐雙11期間2億用戶發送6億短信。3秒可達,三網合一專屬通道,與工信部攜號轉網平臺實時互聯。變量靈活,支持帶入變量,內容靈活,可適應支持各業務場景。

推廣短信

支持多種推廣內容的短信發放,爲提高企業產品增長曝光率提供幫助。業務推廣、新產品宣講、會員關懷等進行短信發送。

批量發送

一對多廣播消息,發佈到主題中的一條消息能夠同時被多個訂閱者訂閱,會被按照多個訂閱指定的推送方式和 Endpoint 地址推送過去。

異步通知

能夠後端服務處理完成任務時,回調通知用戶。進而減小用戶,Web前端和後端服務之間大量沒必要要的輪詢請求。

數據統計

可查看請求量、發送成功量、失敗量、等統計數據;經過日期、手機號等維度,查看發送詳情。

阿里雲消息服務使用教程:阿里雲大學——開發者課堂

相關文章
相關標籤/搜索