EventBridge ile olay güdümlü desenler

AWS'de Uygulama Dağıtımı

Dunieski Otano

Amazon Web Services Solutions Architect

Bir sipariş, dört reaksiyon

  • Tek bir sipariş faturalama, sevkiyat, analitik, e-posta'ya ulaşmalı
  • Dördüne birden doğrudan çağrı kırılgan ve yavaştır
  • Tek bir olay tüm tüketicilere yayılır

Merkezî bir konudan tek bir olayın paralel olarak birden çok aşağı akış servisine yayılması

AWS'de Uygulama Dağıtımı

Doğru mesajlaşma servislerini seçme

AWS mesajlaşma servislerinin 2x2 ızgarası: üretici-tüketici akışlı SQS kuyruğu, birden çok aboneye pub/sub fan-out yapan SNS, kural tabanlı yönlendirmeli EventBridge olay otobüsü ve yeniden oynatma özellikli sıralı Kinesis shard'ları

  • SQS: bir kuyruk, bir tüketici grubu, en az bir kez
  • SNS: pub/sub, bir mesajı birçok aboneye it
  • EventBridge: içeriğe göre olayları birçok hedefe yönlendir
  • Kinesis Data Streams: sıralı, yeniden oynatılabilir akış
AWS'de Uygulama Dağıtımı

Fan-out deseni

  • Tek bir olay aynı anda birkaç tüketiciye ulaşmalı
  • Bir SNS konusuna yayımla
  • Her SQS kuyruğu bu konuya abone olur
  • Her tüketici kendi kopyasını alır, ayrışık

SNS'ten SQS'e fan-out deseni: bir SNS konusu birden çok SQS kuyruğuna yayımlar, her kuyruk kendi tüketicisine bağımsız hızda hizmet eder

AWS'de Uygulama Dağıtımı

Tüketicilerin sadece ihtiyaç duyduğunu alması için filtreleme

  • Filtre olmadan, her abone her olayı alır
  • SNS abonelik filtre politikaları: mesaj özniteliklerine göre filtrele
  • EventBridge içerik filtreleri: olay alanlarına göre eşleştir
  • Her tüketici yalnızca ilgili olayları alır

SNS abonelik filtre politikası ve EventBridge içerik filtresi: her tüketici yalnızca kendi filtre kuralına uyan olayları alır, gereksiz işlem ve maliyeti azaltır

AWS'de Uygulama Dağıtımı

EventBridge ile yönlendirme

EventBridge yönlendirme diyagramı: bir olay otobüsü çoklu kaynaklardan olay alır, kurallar olay kalıplarını eşleştirir ve eşleşen olaylar Lambda, SQS ve diğer hedef servislere yönlendirilir

  • Event bus: olayları birçok kaynaktan alır
  • Rule: belirli olayları eşleştiren bir olay deseni
  • Target: eşleşen olayların gönderildiği yer
  • Bir olay birden çok hedefe yönlenebilir
AWS'de Uygulama Dağıtımı

Kinesis Data Streams ile akış

  • Sürekli, gerçek zamanlı kayıt akışı
    • Shard içinde sıralı kayıtlar
    • Yeniden oynatılabilir: tüketiciler herhangi bir noktadan tekrar okur
    • Birden çok tüketici aynı akışı bağımsız okur
    • Tıklama akışı, telemetri, yüksek hacimli veri için kullan

Kinesis Data Streams mimarisi: üreticiler numaralı shard'lara sıralı kayıtlar yazar, üç tüketici farklı konumlardan bağımsız okur, geri sarma oku yeniden oynatma yeteneğini gösterir

AWS'de Uygulama Dağıtımı

Bir olay tüketicisi olarak Lambda

  • Lambda, SQS, SNS, EventBridge, Kinesis ile tetiklenebilir
  • Event source mapping senin için SQS ve Kinesis'i poll eder
  • SNS ve EventBridge olayları Lambda'ya push eder
  • Sunucu yönetmeden neredeyse gerçek zamanlı işleme

Dört olay kaynağıyla tetiklenen Lambda: event source mapping, SQS ve Kinesis'i toplu olarak poll ederken, SNS ve EventBridge olayları doğrudan Lambda'ya itiyor

AWS'de Uygulama Dağıtımı

Hadi pratik yapalım!

AWS'de Uygulama Dağıtımı

Preparing Video For Download...