Rocketmq 訊息的解壓縮

2021-07-17 04:56:42 字數 599 閱讀 3234

雖然 rocketmq 沒有 kafka 的批量傳送的功能。但在傳送訊息的時候,如果訊息大小超過了 128k ,這條訊息是不允許傳送的。但如果訊息 大小超過了 4k,那麼,這條訊息將會被壓縮。

校驗工作的方法:

validators.checkmessage(msg, this.defaultmqproducer);

如果訊息大小 大於 4k,那麼,這條訊息將會被壓縮。

// 嘗試著去壓縮訊息。原生訊息 >4k ,將壓縮訊息

if (this.trytocompressmessage(msg))

這樣,最終 broker 儲存了是 經過壓縮後的訊息的。但在**解壓呢?其實,壓縮後的訊息是在 消費端進行解的。                                          

rocketmq 的解壓訊息的工具類及方法:

解壓工具:utilall.uncoress

客戶端在拉取訊息後,會進行訊息的處理的,如果這條訊息是曾經壓縮過的,那麼,將會被解壓的。否則,按照正常邏。

壓縮解壓縮

壓縮 壓縮後的檔名 包含物理路徑 待壓縮的資料夾 包含物理路徑 public static void packfiles string filename,string directory catch exception 解壓縮 待解壓檔名 包含物理路徑 解壓到哪個目錄中 包含物理路徑 public ...

壓縮 解壓縮

linux使用最廣泛的壓縮格式位gz,使用gzip命令進行壓縮和解壓縮 1 gzip,gunzip,壓縮 解壓縮檔案,compress or expand files gzip acdfhkllnnrtvv19 s suffix name gunzip acfhkllnnrtvv s suffix ...

Linux 壓縮 解壓縮

1.以.a為副檔名的檔案 tar xv file.a 2.以.z為副檔名的檔案 uncompress file.z 3.以.gz為副檔名的檔案 gunzip file.gz 4.以.bz2為副檔名的檔案 bunzip2 file.bz2 5.以.tar.z為副檔名的檔案 tar xvzf file....