1. 程式人生 > >ActiveMQ的安裝與配置

ActiveMQ的安裝與配置

一、下載與安裝

直接去官網(http://activemq.apache.org/)下載最新版本即可,由於這是免安裝的,只需要解壓就行了。安裝完之後進入bin目錄,雙擊 activemq.bat檔案(linux下在bin目錄下執行 activemq start

二、訪問控制檯

三、修改埠號

61616為對外服務埠號
8161為控制器埠號
當埠號衝突時,可以修改這兩個埠號。cd conf ,修改activemq.xml 修改裡面的61616埠。修改jetty.xml,修改裡面的8161埠。

四、刪除不活動佇列

一般情況下,ActiveMQ的queue或者topic在不使用之後,可以通過web控制檯來刪除掉。當然,也可以通過配置,使得broker可以自動探測到無用的佇列(一定時間內為空的佇列)並刪除掉,回收響應資源。
activemq.xml

<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.base}/data" destroyApplicationContextOnStop="true" schedulePeriodForDestinationPurge="10000">
    <destinationPolicy>
        <policyMap>
          <policyEntries>
            <policyEntry
topic=">" gcInactiveDestinations="true" inactiveTimoutBeforeGC="100000" memoryLimit="1mb">
<pendingSubscriberPolicy> <vmCursor /> </pendingSubscriberPolicy> </policyEntry> <policyEntry queue=">" gcInactiveDestinations
="true" inactiveTimoutBeforeGC="100000" memoryLimit="1mb">
</policyEntry> </policyEntries> </policyMap> </destinationPolicy> </broker>

schedulePeriodForDestinationPurge:10000 每十秒檢查一次,預設為0,此功能關閉
gcInactiveDestinations: true 刪除掉不活動佇列,預設為false
inactiveTimoutBeforeGC:30000 不活動30秒後刪除,預設為60秒
這裡需要注意的是,對於topic的不活動佇列只是,10秒中之類沒有消費者進行註冊監聽,如果一個使用者事先註冊了這個監聽,但是他一直沒有登入,那麼這算活動佇列。而queue只要有訊息沒有出佇列就表示活動佇列。