天天看點

認識MNS消息服務

認識阿裡雲消息服務

在2015杭州雲栖大會上,阿裡雲釋出了一款支援海量消息,使命必達的消息服務産品(http://www.aliyun.com/product/mns)。目前,消息服務也是阿裡雲的一款商用消息産品,其服務穩定性和可靠性都有全面的sla保障。

你是否,還在擔心硬碟損壞等原因導緻資料丢失?還在擔心自建的消息服務受到惡意攻擊?還在擔心業務量迅速增加可能導緻的性能壓力?還在擔心沒有專業的運維人員?擔心機器的維護成本過高?不必擔心!mns消息服務已經幫你一站式解決了以上所有問題,并且,價格超便宜!

讓我們來一起看看mns消息服務是怎麼做到的。 

認識MNS消息服務
認識MNS消息服務

mns消息服務的底層是基于阿裡雲的飛天分布式系統,使用者請求被随機配置設定到背景不同的server上,使用者的資料也被分散存儲在不同的背景server上。使用者每次發送消息時,背景在傳回給使用者寫成功之前,會確定對應的消息已經被複制到3台不同的實體機上,并且背景的資料複制機制能夠保證任何一台實體機故障時其上的資料能夠迅速做遷移,時刻保證使用者資料3份copy可用,進而實作了非常高的資料可靠性(99.99999999%)。這樣的資料可靠性,與其他通過主從備份等傳統方式實作的資料備援,有着根本上的不同。

消息服務無論是中繼資料節點(metaservice)還是資料節點(dataservice),都采用了完全分布式的設計,具有非常好的線性擴充能力。并且使用者資料也被打散存儲在整個飛天叢集裡,突破了單實體機的存儲上限,進而實作了海量的資料存儲能力。使用者的單隊列堆積消息數無上限限制。

同時,對于使用者的每個隊列,mns消息服務都有至少兩台實體機提供服務,并且任何實體機發生故障時,隊列服務單元都會迅速自動遷移,這就保證了任何時刻出現機器故障,都不會影響使用者對于隊列的使用,進而保證了消息服務的高可用性(99.9%)。

在性能方面,完全采用分布式設計的mns消息服務,完全支援使用者業務的削峰填谷場景。2016年春節期間,mns消息服務部分使用者的隊列qps從1000暴增至數萬,過程中使用者服務持續順滑,極大地減輕了使用者自建消息服務時機器維護和機器擴容的壓力。

阿裡雲mns消息服務也同時附贈很多的額外功能。使用消息服務經常會遇到這樣的難題:我的程式接收到消息後,在處理消息的過程中發生了錯誤,導緻程式卡死或者程式崩潰。那麼程式重新開機之後,之前未處理完的消息是否還能被繼續處理,經常是需要很多額外的代碼邏輯的。使用消息服務後,消息隻有在使用者主動删除後才會被删除,否則消息在使用者自定義的時間長度之後還可以被繼續消費,使用者程式重新開機後依然可以繼續接收到自己未處理完的消息,使用者程式隻需要在處理完消息之後主動删除消息即可。

同時,mns消息服務還有着優先級消息,延時消息,批量消息,和主動的消息通知等等一系列特色功能。

mns消息服務的價格更是極具吸引力,每個月有100w的免費請求量,并且每100w次請求隻收2元錢,完全按量付費。

更多資訊,可以随時登陸阿裡雲官網檢視:www.aliyun.com/product/mns