Überblick über Queue Storage

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Fiodar Sazanavets

Senior Software Engineer and Microsoft MVP

Einführung in Message Queues

Background workers and message queues

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Überblick über Message Queues

  • To-do-Liste für die Cloud.
  • Asynchron und blockiert Nutzer nicht.
  • Verarbeitet leichte Nachrichten.
  • Hintergrund-Worker verarbeiten Nachrichten.

Message queue

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Überblick über Queue Storage

  • Azure Queue Storage ist der einfachste Weg, Message Queues in Azure einzurichten.

  • Anwendungen verbinden sich per Connection String mit einer Queue.

  • Nachrichten werden in der Reihenfolge ihrer Einstellung verarbeitet.

Azure Queue Storage

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Queue-Trigger

  • Jede Nachricht wird von einem Queue-Trigger aufgenommen.

  • Nach erfolgreicher Verarbeitung verschwindet sie aus der Queue.

  • Der Trigger verbindet sich über einen Connection String.

  • Die Funktion läuft automatisch, solange Nachrichten in der Queue sind.

Queue trigger

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Fehlerbehandlung

Poison queue

  • Wenn ein Queue-Trigger bei der Verarbeitung fehlschlägt, wird ein Fehler zurückgegeben.

  • Die Nachricht wird aus der Hauptqueue entfernt und in eine Poison Queue verschoben.

  • So verhindert man, dass die fehlerhafte Nachricht die Hauptqueue blockiert.

  • Fehlgeschlagene Nachrichten lassen sich später behandeln oder prüfen.

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Verzögern und Batching

Nachrichten verzögern

  • Für später einplanen
  • Per anfänglicher Unsichtbarkeitsverzögerung

Batching

  • Mehrere Nachrichten in einem Batch verarbeiten
  • Erhöht den Durchsatz
  • Macht das System schneller

Message delays

Message batching

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Nachrichten vs. Events

  • Nachrichtenbasiert:
    • Für einen bestimmten Consumer gedacht.
    • Pull-orientiert.
  • Ereignisbasiert:
    • Etwas ist passiert.
    • Push-orientiert.
  • Wann was nutzen:
    • Queues für zuverlässige Hintergrundarbeit.
    • Events, um unabhängige Services zu informieren, dass etwas passiert ist.

Event-based vs message-based

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Lass uns üben!

Event- und nachrichtenbasierte Lösungen in Azure entwickeln

Preparing Video For Download...