RocketMQ實戰疑問和原理解答(實時更新)
Q1:怎麼解決remote toomuch exception的問題呢?
A:主要是的客戶端傳送的TPS太高,達到了broker的瓶頸。
Q2: broker無法寫入store.log的日誌報錯,報異常如下:
2018-12-17 14:09:37 WARN StoreScheduledThread1 - disk space will be full soon, but delete file failed.
2018-12-17 14:09:42 WARN SendMessageThread_1 - message store is not writeable, so putMessage is forbidden 16
2018-12-17 14:09:47 INFO StoreScheduledThread1 - physic disk maybe full soon, so reclaim space, 0.9246850495308918
R:物理檔案不能無限制的寫入磁碟,當磁碟空間達到閾值時,不再接受訊息,broker列印出日誌,訊息傳送失敗。
A:擴容 或者根據業務縮短commitlog在磁碟的儲存時間。或者調大diskMaxUsedSpaceRatio = 75的預設值到90。
Q3:如果在多topic下,併發對多個partition檔案寫入,相當於隨機io,所以效能不好,那rocketmq也會對多個consumerqueue寫入,為什麼就不會出現效能問題?
A:kafka與rocketmq的儲存區別在於:kafka是每個topic下會對應好幾個.log檔案;而rocketmq則是將所有的topic訊息都寫在了一個commitlog裡。當topic很多時,kafka下的.log檔案就會很多,而commitlog數量則不會受到影響(受影響的是consumequeue,但是consumequeue檔案大小很小,基本上都是在記憶體裡,不需要訪問磁碟)。
在topic很少時,kafka是順序讀,rocketmq是隨機讀,但是rocketmq基於os的pagecache,所以效能不會慢於順序讀。
在topic很多時,kafka檔案很多,就變成了隨機讀,效能會下降。rocketmq依然不受影響。
kafka記憶體不足時會將已經快取的資料swap到磁碟,同時再從磁碟讀取新資料。增加了磁碟IO,效能就降低了。
但是rocketmq 會盡可能利用OS的磁碟IO排程演算法(NOOP)以及PageCache,儘可能的減少磁碟IO。
相關文章
- chatGPT幫助開發實戰解答問題和反思ChatGPT
- 機器學習入門實戰疑問機器學習
- Rocketmq原理&最佳實踐MQ
- 實戰與原理:如何基於RocketMQ實現分散式事務?MQ分散式
- Kafka 原理和實戰Kafka
- RocketMQ實戰系列從理論到實戰MQ
- RocketMQ 實戰(一) - 簡介MQ
- 【RocketMQ】主從同步實現原理MQ主從同步
- GBDT+LR原理和實戰
- 關於租用香港伺服器疑問解答伺服器
- 關於租用香港伺服器疑問解答?伺服器
- 關於租用香港伺服器疑問解答。伺服器
- go-micro整合RabbitMQ實戰和原理GoMQ
- Delta Lake 資料湖原理和實戰
- git - 實時更新Git
- 雲片 RocketMQ 實戰:Stargate 的前世今生MQ
- Maven實戰與原理分析(二):maven實戰Maven
- LLM大模型:deepspeed實戰和原理解析大模型
- Redis Sentinel-深入淺出原理和實戰Redis
- Keepalived 原理與實戰
- nohup 原理及實戰
- bitMap原理及實戰
- 使用 Go、SSE 和 htmx 實時更新網站Go網站
- WPF的實時更新
- RocketMQ實戰--高併發秒殺場景MQ
- 從RabbitMQ平滑遷移到RocketMQ技術實戰MQ
- git實戰-linux定時監控github更新狀態(二)LinuxGithub
- 精華推薦 | 【深入淺出RocketMQ原理及實戰】「效能原理挖掘系列」透徹剖析貫穿RocketMQ的事務性訊息的底層原理並在分析其實際開發場景MQ
- 使用 Kotlin+RocketMQ 實現延時訊息KotlinMQ
- 華納雲關於國外伺服器租用疑問大全解答伺服器
- 簡數採集釋出Destoon常見疑問及詳細解答
- OpenTelemetry 實戰:gRPC 監控的實現原理RPC
- ?【Alibaba中介軟體技術系列】「Nacos技術專題」配置中心載入原理和配置實時更新原理分析(上)
- ?【Alibaba中介軟體技術系列】「Nacos技術專題」配置中心載入原理和配置實時更新原理分析(中)
- 【深入淺出Spring原理及實戰】「原始碼原理實戰」從底層角度去分析研究PropertySourcesPlaceholderConfigurer的原理及實戰注入機制Spring原始碼
- JMeter實戰(二) 執行原理JMeter
- 【linux】helloword原理分析及實戰Linux
- 直播原理與web直播實戰Web