日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

消息队列(1):一个消息队列应该有的特点

發布時間:2024/7/23 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 消息队列(1):一个消息队列应该有的特点 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

消息隊列常見場景

異步解耦
削峰填谷
日志收集分析
代替事務,最終一致

消息隊列特點

消息隊列之所以能異步,就是因為消息并不是實時處理的,那肯定會有一個存儲消息,處理消息的地方,才能達到異步效果。
所以最簡單的消息隊列由以下三塊組成:
消息生產者,消息處理中心,消息消費者。

1.消息堆積有處理策略

當生產者生產消息的速度大于消費者消費消息的速度時,消息就會在消息中心產生堆積。
所以消息隊列必須能夠處理這種情況,防止消息中心無限堆積。
一般會給消息隊列設置一個閾值,超過閾值消息將不進入消息中心,防止整個消息中心掛掉。
這個思想和我們平時說的網絡限流是一樣的。比如微博一旦訪問量過大,超過他們所設定的閾值,一部分人就會受到影響,甚至訪問不了微博,但有些人卻幾乎沒有影響。

2.消息應該持久化

異步消息的存儲,絕對不是簡單的內存存儲,否則一旦斷電或重啟,消息就都沒有了,所以消息隊列一定會對消息做持久化操作,比如存在文件中。
這個和redis的持久化大同小異,內存不可靠就持久化,要么到本地文件,要么存入數據庫。

3.消息應該是可靠的

消息的可靠是指:生產者生產的消息,應該可靠的被持久化保存,并被消費者消費掉。
站在生產者的角度,消息一旦發出去,就必須被消費。

4.消息不能重復消費

雖然很多消息消費者都做了消息的冪等操作,即保證即使重復的消息也不會影響消息的結果。
但是作為消息隊列來說,應該是不能出現消息重復的。
所以站在消息中心的角度來看,必須要有可靠的技術手段來保證消息不被重復消費。

5.消息是有序的

這點很容易理解,某些業務場景下,消息必須是有序的。
先發出的消息,就應該先被消費。

6.支持集群

消息隊列的高可用,防止單點故障,增加吞吐量,就必須要支持集群模式。

7.消息中間件

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的消息队列(1):一个消息队列应该有的特点的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。