Jämförda versioner

Nyckel

  • Dessa rader lades till.
  • Denna rad togs bort.
  • Formateringen ändrades.

...

Instruktion för installation av ActiveMQ och rekommendationer finns att läsa på soi-toolkits installationsguide för ActiveMQ.

ActiveMQ konfigureras i <ActiveMQ_HOME>/conf/activemq.xml. på soi-toolkits installationsguide för ActiveMQ finns det rekommendationer och exempel på hur ActiveMQ kan konfigureras.

För SKLTP finns det en rekommenderad activemq.xml som kan laddas ner här. 

Inställningar för minne/disk

Diskutrymme

För att undvika problem med att ActiveMQ försöker allokera mer disk än vad som finns tillgängligt och undvika följande fel i loggen:

2013-05-06 20:17:44,724 | WARN | Store limit is 100000 mb, whilst the data directory: /home/mule/tp/apache-activemq-5.6.0/data/kahadb only has 82380 mb of usable space | org.apache.activemq.broker.BrokerService | main

beakta hur mycket disk som finns tillgängligt kontra följande parametrar i activemq.xml

...

Konfiguration

Minne

  1. Java heapsize konfigureras i ACTIVEMQ_HOME/bin/<operativsystem>/wrapper.conf med:

    Inget format
    wrapper.java.initmeory
    wrapper.java.maxmemory

    Rekommendation är att sätta dem till samma värde, på så sätt säkras redan vid uppstart att det faktiskt går att allokera minne för max-värdet (annars är det möjligt att få OutOfMemoryError innan max-värdet uppnås).

  2. Broker minnesutnyttjande konfigureras i ACTIVEMQ_HOME/conf/activemq.xml. Se https://code.google.com/p/soi-toolkit/wiki/IG_RT_ActiveMQ#Configure_broker_resource_usage

     

    Inget format
    <systemUsage>
      <systemUsage>
          <memoryUsage>
              <memoryUsage limit="64 mb"/>
          </memoryUsage>

    Note: för ActiveMQ 5.9 kan följande användas: <memoryUsage percentOfJvmHeap="70" />

     

  3. Köminne (viktigt vid flow control) konfigureras med memoryLimit. Se exempel activemq.xml och https://code.google.com/p/soi-toolkit/wiki/IG_RT_ActiveMQ#Configure_broker_resource_usage

    Inget format
    <policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb"> 

Dead-letter queue (DLQ) policy

Konfigureras med <deadLetterStrategy>. Se https://code.google.com/p/soi-toolkit/wiki/IG_RT_ActiveMQ#Setup_retry_and_DLQ-handling_policies

Disk

  1. Konfigurera var meddelanden lagras genom att sätta sökväg i ACTIVEMQ_HOME/bin/<operativsystem>/wrapper.conf: 

    Inget format
    set.default.ACTIVEMQ_DATA=%ACTIVEMQ_BASE%/data

    Rekommendation:

    1. Använd inte system/root-partitionen till datalagring (inte bra om systemdisken blir full).
    2. I datacenter/virtualiserade miljöer: använd SAN/nätverksdisk.
  2. Konfigurera hur mycket disk ActiveMQ ska använda med storeUsage

    Inget format
              <systemUsage>
                <systemUsage>
                    <memoryUsage>
                        <memoryUsage limit="64 mb"/>
                    </memoryUsage>
                    <storeUsage>
                        <storeUsage limit="100 gb"/>

...

  1. 
                    </storeUsage>

...

  1. 
                    <tempUsage>
                        <tempUsage limit="50 gb"/>

...

  1. 
                    </tempUsage>
                </systemUsage>
            </systemUsage>

    Not: storeUsage är för persistenta meddelanden, tempUsage är för icke-persistenta meddelanden.

    Observera

    Vid uppstart kontrollerar ActiveMQ att det finns tillräckligt med disk - eller sänker den faktiska gränsan för vad som kommer att användas till vad som finns tillgängligt, då loggas en varning i stil med:

     

    2013-05-06 20:17:44,724 | WARN | Store limit is 100000 mb, whilst the data directory: /home/mule/tp/apache-activemq-5.6.0/data/kahadb only has 82380 mb of usable space | org.apache.activemq.broker.BrokerService | main

Synkron skrivning till disk av meddelanden

Se https://code.google.com/p/soi-toolkit/wiki/IG_RT_ActiveMQ#Configure_broker_for_reliable_message_persistence

 

JMX

Konfigurera JMX-åtkomst genom att:

...