自訂主題、篩選與重試

開發 Azure 事件導向與訊息導向解決方案

Fiodar Sazanavets

Senior Software Engineer and Microsoft MVP

你將學到什麼

  • Event Grid 網域
  • 進階篩選
  • Dead-letter(死信)
    • 調整重試行為

Event Grid 網域

開發 Azure 事件導向與訊息導向解決方案

Event Grid 網域

Event Grid 網域

開發 Azure 事件導向與訊息導向解決方案

網域 vs 自訂主題

網域

  • 管理多個隔離的主題
  • 可橫跨多個:
    • 應用程式
    • 團隊
    • 租用戶
  • 讓不同客戶彼此分離

自訂主題

  • 獨立主題
  • 單一發布者情境
  • 供少量使用者訂閱

Event Grid 網域

Event Grid 主題

開發 Azure 事件導向與訊息導向解決方案

進階篩選

  • 篩選器 只傳遞訂閱者關心的事件。

  • 主旨前後綴篩選 適用於路徑式主旨。

    • 例如:/sales/.jpg
  • 也可依 事件類型 篩選。

  • 進階篩選 支援大於、小於、包含等比較。

  • 多個篩選以 邏輯 AND 組合,精準控管。

進階篩選

開發 Azure 事件導向與訊息導向解決方案

Event Grid 的死信機制

  • Event Grid 支援 dead-letter(死信) 作為安全網。

  • 若在 全部重試後 仍無法傳遞,事件不會遺失。

  • 未送達事件會寫入 死信儲存容器

  • 會保留失敗脈絡,以支援 檢視與稽核

  • 之後可用復原流程 重播事件

Event Grid 死信

開發 Azure 事件導向與訊息導向解決方案

重試與退避

  • Event Grid 重試傳遞時使用 指數退避

  • 每次失敗後,重試間隔會增加

  • 每個事件訂閱都有 可設定的重試原則

  • 你可調整 最大傳遞次數存活時間(TTL)

  • 延遲或遺漏事件的影響 選擇重試設定。

指數退避

開發 Azure 事件導向與訊息導向解決方案

傳遞保證

傳遞保證

  • Event Grid 提供 至少一次傳遞

  • 可能出現重複,且 不保證全域排序

  • 這些保證同樣適用於 系統事件與自訂事件

  • 差別在於 誰擁有發布者

  • 系統事件 由 Azure 發布事實。

  • 自訂事件 由你發布事實,並需自行處理 去重

開發 Azure 事件導向與訊息導向解決方案

一起來練習吧!

開發 Azure 事件導向與訊息導向解決方案

Preparing Video For Download...