ActiveMQ訊息持久化儲存策略
阿新 • • 發佈:2019-01-14
ActiveMQ的核心是Java編寫的,也就是說如果服務端沒有Java執行環境ActiveMQ是無法執行的。ActiveMQ啟動時,啟動指令碼使用wrapper包裝器來啟動JVM。JVM相關的配置資訊在啟動目錄的“wrapper.conf”配置檔案中。各位讀者可以通過改變其中的配置項,設定JVM的初始記憶體大小和最大記憶體大小(當然還可以進行其他和JVM有關的設定,例如開啟debug模式)。
從最初的AMQ Message Store方案,到ActiveMQ V4版本中推出的High performance journal(高效能事務支援)附件 ,並且同步推出了關於關係型資料庫的儲存方案。ActiveMQ 5.3版本中又推出了對KahaDB的支援(
ActiveMQ常用的三種持久化儲存方案:KahaDB、LevelDB、關係型資料庫。其中KahaDB和LevelDB的工作原理基本類似,都採用記憶體+磁碟介質的方案:記憶體用於存放資訊的位置索引,磁碟介質上存放訊息內容。而關係型資料庫的方案,ActiveMQ將完全通過JDBC對資料庫進行操作完成訊息的儲存和修改。某種儲存方案的效能,除了這種儲存方案的工作原理以外對其有直接影響外,還要考慮它的工作環境。