Der asynchrone Nachrichtenaustausch über Messaging ermöglicht die Entkopplung von Sender und Empfänger. Die lose Kopplung von Services ist eine Voraussetzung für erfolgreiche Microservices Projekte.
Apache ActiveMQ ist ein leistungsfähiger und beliebter Message Broker mit zahlreichen Features und Konfigurationsmöglichkeiten. Dieses Seminar vermittelt die notwendigen Grundlagen und das Detailwissen um ActiveMQ optimal einzusetzen.
Messaging Grundlagen
- Wie Quality of Service das Leben von Entwicklern und Administratoren erleichtert.
- Lose Koppelung über Nachrichten
- Was ist ActiveMQ?
Nachrichten und Queues
- Aufbau einer Nachricht
- Nützliche Messageheader
- Verwendung von Queues für den Nachrichtaustausch
- Softwarearchitektur mit Queues
- Verwaltung von Queues mit dem ActiveMQ
Persistenz
- Das Message Store Muster
- KahaDB oder LevelDB Store
- Journaling und Caching
- Mit dem JDBC Message Store Nachrichten in einer relationalen Datenbank persistieren
Topics
- Durable Subscriber
- Wann verwende ich eine Queue und wann ein Topic?
Clients
- Java Message Service JMS
- Consumer und Producer mit Java realisieren
Konfiguration & Administration
- Aufbau der activemq.xml Datei
- Spring Grundwissen für die ActiveMQ Konfiguration
- Die Web Konsole
- Logging
- Dead Letter Queue
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, HTTP
- Die Protokolle OpenWire, MQTT, AMQP und Stomp im Überblick
- Anbindung von Perl, Phyton, C, ... Clients mit dem Stomp Protokoll
- Client Failover
AMQP
- Das AMQP Protokoll
- AMQP mit ActiveMQ
- AMQP oder OpenWire?
Performanz
- Wie viele Nachrichten kann der Broker verarbeiten?
- Wie lange dauert die Zustellung einer Nachricht?
Performanz und Tuning
- Einflußfaktoren
- Speicherverbrauch
- Netzwerk und TCP Tuning
Clustering
- Hochverfügbarkeit, Ausfallsicherheit, Skalierbarkeit und Antwortzeitverhalten
- Competing Consumers und parallele Verarbeitung
- Lastverteilung mit Loadbalancing
- Store and Forward mit einem Network of Brokers basierend auf Apache Zookeeper
Administration
- Die Web Konsole
- Logging mit log4j
- Wie du mit Advisory Topics auf dem Laufenden bleibst
Monitoring
- ActiveMQ mit JMX überwachen
- Überwachung von ActiveMQ mit Nagios
Programmierung
- Einführung in JMS
- Wie du mit der ActiveMQ API Message Consumer und Producer erstellen kannst
Enterprise Integration Patterns EIP
- Message Broker
- Message Expiration
- Message Filter mit JMS Selektoren
- Guaranteed Delivery
- Idempotent Receiver
- Invalid Message Channel
- Verfolgen von Nachrichten mit der Correlation Id
- Versenden großer Nachrichten mit dem Claim Check Muster
Sicherheit
- Authentifikation über Passwort oder Zertifikat
- Verschlüsselung mit SSL/TLS
Architektur
- Wie verändert sich eine Softwarearchitektur durch die Verwendung von Messaging?
- Synchrones Request/Reply und warum es stinkt
- Welche Muster eignen sich?
- Die Rolle von Messaging in einer Microservices Architektur
Routing mit Apache Camel
- Integration mit ActiveMQ
- EAI Patterns
Zielgruppe
Administratoren, Entwickler, Software Architekten
Vorkenntnisse
IT Grundlagen, Grundlagen in der Java Programmierung sind hilfreich aber nicht notwendig
Deine Vorteile
- Sie lernen, wie Sie ActiveMQ optimal an Ihre Anforderungen anpassen können
- Ihre zukünfigen Architekturen werden durch lose Kopplung robuster
Dauer
2 Tage
Kursunterlage
Handouts aller in der Schulung präsentierten Folien sowie ein Skript mit detailierten Übungen.
Apache and Apache Cassandra sind eingetragen Warenzeichen der The Apache Software Foundation.