Du arbeitest im Betrieb? Den ActiveMQ Kurs führen wir auch für Administratoren ohne Java-Kenntnisse durch.
Apache ActiveMQ ist ein verbreiteter und bewährter Message Broker. Er setzt auf den Java Message Service (JMS) und bietet zahlreiche Features und Konfigurationsmöglichkeiten.
Asynchroner Nachrichtenaustausch über Messaging entkoppelt Sender und Empfänger. Diese lose Kopplung von Services ist eine solide Grundlage für verteilte Anwendungen und die Integration von Systemen.
In dieser Schulung lernst du die Grundlagen und das nötige Wissen, um ActiveMQ optimal einzusetzen. In zahlreichen praxisbezogenen Übungen arbeitest du an Themen wie Queues und Topics, Transaktionen, Clustering, Sicherheit und Redelivery.
Messaging Grundlagen
- Lose Kopplung über Nachrichten
- Was ist ActiveMQ?
- Wie Quality of Service Entwicklern und Administratoren das Leben erleichtert
Nachrichten und Queues
- Aufbau einer Nachricht
- Nützliche Message-Header
- Queues für den Nachrichtenaustausch
- Softwarearchitektur mit Queues
- Verwaltung von Queues mit ActiveMQ
Topics
- Durable Subscriber
- Wann verwende ich eine Queue und wann ein Topic?
Clients und Programmierung
- Einführung in den Java Message Service (JMS)
- Consumer und Producer mit Java realisieren
- Message Consumer und Producer mit der ActiveMQ API erstellen
Persistenz
- Das Message Store-Muster
- KahaDB oder LevelDB Store
- Journaling und Caching
Konfiguration und Administration
- Aufbau der activemq.xml
- Spring-Grundwissen für die ActiveMQ-Konfiguration
- Die Web-Konsole
- Logging mit log4j
- Mit Advisory Topics auf dem Laufenden bleiben
Fehlerbehandlung
- Redelivery
- Dead Letter Queue
Transaktionen
- AUTO- und CLIENT-Acknowledge
- JMS-Transaktionen
- Message-orientierte Middleware und Transaktionen
Protokolle und Transport
- Konnektoren für VM, TCP, NIO, SSL und HTTP
- Die Protokolle OpenWire, MQTT, AMQP und STOMP im Überblick
- AMQP oder OpenWire?
- Anbindung von Python-, Perl- oder C-Clients über STOMP
- Client Failover
Performanz und Tuning
- Wie viele Nachrichten verarbeitet der Broker?
- Wie lange dauert die Zustellung einer Nachricht?
- Einflussfaktoren und Speicherverbrauch
- Netzwerk- und TCP-Tuning
Clustering
- Hochverfügbarkeit, Ausfallsicherheit und Skalierbarkeit
- Competing Consumers und parallele Verarbeitung
- Lastverteilung mit Loadbalancing
- Store and Forward mit einem Network of Brokers (Apache Zookeeper)
Monitoring
- ActiveMQ mit JMX überwachen
- Überwachung mit Nagios
Enterprise Integration Patterns
- Message Broker und Message Filter mit JMS-Selektoren
- Message Expiration und Guaranteed Delivery
- Idempotent Receiver und Invalid Message Channel
- Nachrichten verfolgen mit der Correlation Id
- Große Nachrichten mit dem Claim Check-Muster
Sicherheit
- Authentifizierung über Passwort oder Zertifikat
- Verschlüsselung mit SSL/TLS
Architektur und Integration
- Wie verändert sich die Softwarearchitektur durch Messaging?
- Synchrones Request/Reply – braucht man das noch?
- Welche Muster eignen sich?
- Die Rolle von Messaging in einer Microservices-Architektur
- Routing und Integration mit Apache Camel
Zielgruppe
Administratoren, Entwickler und Softwarearchitekten
Vorkenntnisse
IT-Grundlagen. Grundlagen in der Java-Programmierung sind hilfreich, aber nicht notwendig.
Ziele
- Du verstehst die Konzepte von JMS, Queues, Topics und Transaktionen
- Du kannst Consumer und Producer mit der ActiveMQ API entwickeln
- Du kannst ActiveMQ sicher konfigurieren, betreiben und im Cluster skalieren
Deine Vorteile
- Du lernst, wie du ActiveMQ optimal an deine Anforderungen anpasst
- Deine Architektur wird durch lose Kopplung robuster
Dauer
2 Tage
Kursunterlage
Handouts aller in der Schulung präsentierten Folien sowie ein Skript mit detaillierten Übungen.