您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
03 買粉絲買粉絲無限回調系統(面試官杠上重復消費、消息堆積、消息丟失、順序消息?)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-09 08:58:12【】5人已围观
简介部署一個消費者實例,然后設置MQ每次只推送一個消息,再開啟手動ack即可。這樣MQ每次只會從隊列推送一個消息過來,處理完成之后我們ack回應,再消費下一個,就能確保消息順序性。這樣MQ每次只會從隊列推
這樣MQ 每次只會從隊列推送一個消息過來,處理完成之后我們 ack 回應,再消費下一個,就能確保消息順序性。
但是這樣的操作也會降低消費者的性能, 一個消費者消費消息時,其他消費者會阻塞,所以很多場景下可能并不會采用這樣的方案。
所以一般會根據場景,制定一定的策略來解決消費順序問題。
多線程并發搶占出現消費亂序問題
當MQ采用簡單隊列模式的時候,如果消費者采用多線程的方式來加速消息的處理,此時也會出現消息亂序的問題。
多線程并發搶占出現消費亂序問題,將消息ID進行hash計算,將相同值放入同一個內存隊列,讓指定線程執行,即可解決順序消費問題。
在多個分區中保證消息順序和消息處理效率
首先使用多個分區,消息可以被發送端發送至多個分區,保證消息發送的效率。然后在消費端在拉消息時使用ConutdownLunch來記錄一組有序消息的個數。如果達到個數,說明已拉取到完整的一組有序消息。然后在消費端根據消息序號進行排序,消費端將排好序的消息發到內存隊列(可以搞多個),一個內存隊列開啟一個線程順序處理消息。即可最大程度上既保證順序又保證效率!
RocketMQ作為阿里開源的一款高性能、高吞吐量的消息中間件,支持順序消息,所以如果有這種場景或者要使用MQ,我建議你直接使用RocketMQ即可。
我們說了一些處理與分析問題的方法,這里有一個最重要的點就是我們需要有一套實用的監控發現工具或者方式,在問題第一時間發現才是王道,不然我們上面所說的都空談,當問題發現的時候損失已經無法挽回。所以我們要在設計系統之初需要要為監控系統或者程序提供完備或者必須的日志,接口,數據等,這要才是一個合理的設計。當沒有監控系統的情況下我們必須自己設計一套簡單分析接口。
最后, 如果我的文章對你有所幫助或者有所啟發, 歡迎關注買粉絲(買粉絲搜索買粉絲:首席架構師專欄),里面有許多技術干貨,也有我對技術的思考和感悟,還有作為架構師的驗驗分享;關注后回復 【面試題】,有我準備的面試題、架構師大型項目實戰視頻等福利 , 我會帶著你一起學習、成長,讓我們一起加油!!!
很赞哦!(21572)
相关文章
- 07 重慶出口貿易公司有哪些(重慶兩江外貿公司有哪些)
- 02 壁紙好看ins少女心動漫(日系夏日小清新插畫-適合夏日小清新ins風格美甲款式2018日系少女心美甲)
- 07 鐵柱老師買粉絲關注(面對洪澇災害,普通公眾應該如何防范保護生命安全?)
- 02 殼牌浙江石油貿易有限公司是做什么的(能告訴我昆山裕晟體育用品制造有限公司怎么樣?謝了,大神幫忙啊)
- 07 貿易非效率模型怎么操作(貿易非效率項是什么意思)
- 02 地理環境對國際貿易的影響思維導圖(高考地理的學習重點有哪些)
- 02 埃及對外貿易有哪些特點(古埃及有哪些文明特點?)
- 07 贛州中南汽車貿易有限公司(江西汽車銷售集團排行榜前十名(江西實體企業比較厲害的))
- 02 基金凈值嘉實海外基金天天基金網(請教買長期投資基金)
- 07 遼寧金融職業學院國際經濟與貿易學什么(經濟學哪個專業好)