Go Live von Apache Active MQ

Wissensbeitrag

Welche Anpassungen sollten vor dem Go Live an der Apache Active MQ Brokerkonfiguration vorgenommen werden? Gibt es hier Best Practices? Werden diese ausreichend in der Produktdokumentation beschrieben oder sind diese an anderer Stelle zu finden?

Einleitung

Apache Active MQ ist ein Opensource Messaging System, welches zur Auflösung der engen Kopplung zwischen Anwendungen genutzt werden kann. Neben der in diesem Projekt im Fokus stehenden Java JMS API wieder unter anderem auch eine REST, C und .NET API zur Kommunikation zwischen Anwendung und Messagingsystem zur Verfügung gestellt.

KahaDB Bug in der Active MQ Version 5.4.0

Damit Nachrichten dauerhaft gespeichert werden, muss ein persistenceAdapter konfiguriert werden. Hier ist aufgrund der Performancevorteile die KahaDB dem AMQ Message Store vorzuziehen. Wie Vorabtests der Apache Active MQ Instanz ergaben, besteht in der Apache Active MQ 5.4.0 Version ein Bug in der Implementierung der dateibasierten KahaDB. Die Nachrichten in Queues werden bei Nutzung in sogenannten Log-Dateien, unterhalb des kahadb Verzeichnis, abgebildet. Die Logdateien werden dabei schrittweise hochgezählt. Im Stresstest zeigte sich, dass Active MQ ab einem bestimmten Zeitpunkt, die Logdateien nicht mehr aufräumte. Selbst bei Leerung aller Queues blieben Log-Dateien bestehen. Parallel dazu wuchs der genutzte Java Heap kontinuierlich an. Mit einer Migration auf die Version 5.5.1 konnten beide Probleme behoben werden.

root@debian:/opt/apache-activemq-5.5.1/data/kahadb# ls

db-66.log db.data db.redo lock

Listing 1: Ablageort der KahaDB Logdateien

Optimierung für erhöhte Lastaufkommen
Anpassungen im Bereich Schwellwerte, Deadletter Queues, Logging & Security
Qualität der Produktdokumentation & alternative Informationsquellen

Fazit

Bei dem Go Live einer Active MQ Instanz sind einige Aspekte zu berücksichtigen, die kaum dokumentiert sind. Soll die Inbetriebnahme unter hohem zeitlichen Druck erfolgen, kann diese nur mittels Einsatz von erfahrenem Personal erfolgreich erzielt werden.

Autor

Wolfgang Schmidt
(ehemaliger) GeschäftsführerX-INTEGRATE Software & Consulting GmbHKontakt