Користувацькі топіки, фільтрування та повторні спроби

Розробка рішень на Azure на основі подій та повідомлень

Fiodar Sazanavets

Senior Software Engineer and Microsoft MVP

Що ви вивчите

  • Домени Event Grid
  • Розширене фільтрування
  • Dead-lettering
    • Налаштування повторних спроб

Домен Event Grid

Розробка рішень на Azure на основі подій та повідомлень

Домени Event Grid

Домен Event Grid

Розробка рішень на Azure на основі подій та повідомлень

Домен vs користувацький топік

Домен

  • Керує багатьма ізольованими топіками
  • Охоплює кілька:
    • застосунків
    • команд
    • орендарів
  • Розділяє клієнтів

Користувацький топік

  • Окремий топік
  • Сценарій з одним публішерем
  • Розрахований на невелику кількість споживачів

Домен Event Grid

Топік Event Grid

Розробка рішень на Azure на основі подій та повідомлень

Розширене фільтрування

  • Фільтри доставляють лише потрібні підписнику події.

  • Фільтри за префіксом і суфіксом теми добре працюють для шляхоподібних тем.

    • Наприклад, /sales/ або .jpg.
  • Події також можна фільтрувати за типом події.

  • Розширені фільтри підтримують порівняння: більше, менше, містить.

  • Кілька фільтрів поєднуються логічним AND для точного контролю.

Розширене фільтрування

Розробка рішень на Azure на основі подій та повідомлень

Dead-lettering в Event Grid

  • Event Grid підтримує dead-lettering як запобіжну мережу.

  • Якщо доставка не вдалася після усіх повторних спроб, подія не губиться.

  • Недоставлені події записуються до сховища dead-letter.

  • Контекст помилки зберігається для перевірки та аудиту.

  • Події можна відтворити пізніше за сценарієм відновлення.

Dead-lettering в Event Grid

Розробка рішень на Azure на основі подій та повідомлень

Повтори й back-off-и

  • Event Grid використовує експоненційний back-off для повторних доставок.

  • Затримка між спробами зростає після кожної невдачі.

  • Кожна підписка на події має налаштовувану політику повторів.

  • Можна налаштувати максимум спроб доставки і час життя (TTL).

  • Вибирайте параметри залежно від наслідків запізнілих чи втрачених подій.

Експоненційні back-off-и

Розробка рішень на Azure на основі подій та повідомлень

Гарантії доставки

Гарантії доставки

  • Event Grid забезпечує at-least-once delivery.

  • Дублікати можливі, а глобальне впорядкування не гарантується.

  • Це діє для системних і користувацьких подій.

  • Різниця в тому, хто є публішером.

  • Для системних подій факти публікує Azure.

  • Для користувацьких подій ви публікуєте факти й самі маєте виконувати дедуплікацію.

Розробка рішень на Azure на основі подій та повідомлень

Давайте потренуємось!

Розробка рішень на Azure на основі подій та повідомлень

Preparing Video For Download...