Was bedeutet Partitionierung?
Ein Schlüssel bestimmt beispielsweise, welcher Teilstrom die Ereignisse eines bestimmten Auftrags erhält. Damit können verschiedene Aufträge gleichzeitig verarbeitet werden, während zusammengehörige Ereignisse in einem Bereich bleiben.
Die Wahl des Schlüssels beeinflusst Last und Reihenfolge. Wenn sehr viele Vorgänge in nur einem Bereich landen, entsteht dort ein Engpass. Eine Reihenfolge pro Partition ist keine globale Reihenfolge aller Nachrichten.
So sieht das in der Praxis aus
Beispiel: Alle Ereignisse desselben Auftrags landen in derselben Partition und werden dort geordnet verarbeitet.
Häufige Fragen
Wie wählt man einen passenden Partitionsschlüssel?
Nach den Anforderungen an Zusammengehörigkeit, Reihenfolge und Lastverteilung. Beispielsweise können alle Ereignisse eines Auftrags denselben Schlüssel erhalten.
Warum ist eine Partition deutlich stärker ausgelastet?
Möglicherweise kommen bestimmte Schlüssel besonders häufig vor. Eine ungleichmäßige Verteilung kann die Leistung begrenzen, obwohl andere Bereiche noch Kapazität haben.
Erhöht eine größere Partitionszahl immer die Geschwindigkeit?
Nein. Sie kann mehr parallele Arbeit ermöglichen, bringt aber Verwaltungsaufwand mit sich. Auch Empfänger, Zielsysteme und notwendige Reihenfolgen begrenzen den Nutzen.
