Amazon SOA-C02: Sunucusuz ve Uygulama Entegrasyonu — Çalışma kılavuzu

Şunun bir parçası: AWS SysOps Administrator Associate SOA-C02 — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Amazon sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.

Sunucusuz mimari ve uygulama entegrasyonu, sunucuları yönetmeden olay güdümlü uygulamaları çalıştırmayı ve servisleri güvenilir bir şekilde birbirine bağlamayı kapsar. Operasyonel önemi, maliyetleri öngörülebilir tutarken ölçeği, gecikmeyi, hata modlarını ve en az ayrıcalık ilkesiyle erişimi yönetmekte yatar. Bu alan, Lambda davranışlarına (soğuk başlangıçlar, eş zamanlılık), güvenilir olay teslimine (EventBridge, SNS, SQS), güvenlik kontrollerine (yürütme rolleri ve izinler) ve asenkron akışlar için gözlemlenebilirliğe odaklanır.

AWS Lambda operasyonel yönleri ve eş zamanlılık

Lambda performansı ve kullanılabilirliği; soğuk başlangıçlara, eş zamanlılık limitlerine ve kısıtlama kontrollerine bağlıdır. Soğuk başlangıçlar, Lambda’nın yeni bir yürütme ortamı başlatması gerektiğinde meydana gelir; gecikmeye duyarlı yollar için sağlanmış eş zamanlılık (

undefined

) kullanarak etkiyi azaltın ve daha hafif çalışma zamanlarını veya daha küçük başlatma işlerini tercih edin. Aşağı akış servislerini korumak ve fonksiyon başına kotaları zorunlu kılmak için ayrılmış eş zamanlılık (

undefined

) ile eş zamanlılığı ayırın ve sınırlayın; ConcurrentExecutions ve Throttles CloudWatch metriklerini izleyin.

Yeniden deneme ve çağırma modelleri moda göre farklılık gösterir: senkron çağrılar (API Gateway, doğrudan Invoke) hataları anında döndürür; asenkron çağrılar (EventBridge, SNS, S3 asenkron bildirimleri) Lambda’nın asenkron yeniden deneme politikasını (geri çekilme ile iki yeniden deneme) kullanır ve DLQ’ları veya hedefleri (destinations) kullanabilir. Olay kaynağı eşlemeleri (SQS, Kinesis, DynamoDB akışları) için, Lambda’nın yoklayıcısı (poller), mesajın süresi dolana veya olay kaynağının yeniden yönlendirme politikası bir işlenemeyen mesajı tetikleyene kadar yeniden dener. Yinelenen işlemeyi azaltmak için zaman aşımını ve belleği ihtiyatlı bir şekilde yapılandırın (

undefined

) ve SQS görünürlük zaman aşımını > fonksiyon zaman aşımı (önerilen: görünürlük >= fonksiyon zaman aşımı * 2) olarak ayarlayın.

EventBridge ile olay güdümlü mimariler

EventBridge, esnek yönlendirme, şema kaydı, hesaplar arası teslimat ve yeniden deneme/DLQ ayarlarına sahip yönetilen bir olay yolu (event bus) sağlar. Alan ayrımı için özel olay yollarını ve SaaS entegrasyonları için iş ortağı olay yollarını kullanın; desenlerle kurallar oluşturun (

undefined

) ve işlenemeyen mesaj ve yeniden deneme yapılandırmasıyla hedefler ekleyin (hedefler JSON’u DeadLetterConfig ve RetryPolicy’yi destekler). Olay şekillerini keşfetmek ve zorunlu kılmak için şema kaydını kullanın; üreticiler iyi tanımlandığında şemaları kaydedin ve yararlı olduğu durumlarda tipli modeller oluşturmak için Kod Bağlamalarını (Code Bindings) kullanın.

Şu durumlarda EventBridge’i seçin:

Daha basit fan-out veya garantili kuyruk semantiği gerektiğinde doğrudan SNS/SQS’i seçin:

SNS ve SQS ile mesajlaşma (DLQ’lar, görünürlük zaman aşımı)

SNS bir pub/sub push servisidir; SQS ise pull semantiğine sahip dayanıklı bir kuyruktur. Yüksek güvenilirlikli işleme için, alımı (ingestion) işlemeden ayırmak ve yeniden denemeler ile görünürlük üzerinde kontrol sahibi olmak amacıyla SNS -> SQS -> Lambda desenlerini tercih edin. Mesajları maxReceiveCount’tan sonra bir DLQ’ya taşımak için SQS yeniden yönlendirme politikasını (

undefined

) yapılandırın ve erken yeniden teslimatı önlemek için görünürlük zaman aşımının yeterince uzun olduğundan emin olun (önerilen: görünürlük >= fonksiyon zaman aşımı * 2). FIFO ihtiyaçları için, sırayı korumak amacıyla mesaj grubu kimlikleriyle (message group IDs) ve tekrarları önlemek için tekilleştirme kimlikleriyle (deduplication IDs) SQS FIFO veya SNS FIFO kullanın.

İşlenemeyen mesajları yönetme seçenekleri ve nerede kullanılacakları:

Idempotency esastır: DynamoDB koşullu yazmalarını (PutItem ile ConditionExpression attribute_not_exists(pk)), TTL ile saklanan idempotency belirteçlerini veya tam olarak bir kez işleme (exactly-once) semantiği için SQS FIFO tekilleştirmesini kullanarak idempotent işleyiciler (handler) uygulayın.

Fonksiyon izinleri, roller ve en az ayrıcalık ilkesi

Lambda yürütme rollerine ve fonksiyon kaynak politikalarına en az ayrıcalık ilkesini uygulayın. CloudWatch Logs için AWSLambdaBasicExecutionRole ile başlayın, ardından servisler için açık kaynak ARN’leri verin (örneğin, arn:aws:dynamodb:region:acct:table/MyTable üzerinde dynamodb:PutItem). Belirli ARN’lerin mümkün olduğu durumlarda Resource: “*” gibi joker karakterlerden kaçının. Eylem ve kaynağa göre kapsamı belirlenmiş yönetilen veya özel politikalar kullanın ve servisler için çağırma izinleri eklerken koşulları (aws:SourceAccount, aws:SourceArn) dahil edin:

undefined

Karar kriterleri:

Sunucusuz (Serverless) için Gözlemlenebilirlik ve Sorun Giderme

Gözlemlenebilirlik; metrikleri, logları, izleri (trace) ve asenkron teslimat durumunu kapsamalıdır. Önemli CloudWatch metrikleri: Invocations, Duration, Errors, Throttles, ConcurrentExecutions, IteratorAge (stream ve SQS tetikleyicileri için). Asenkron hata görünürlüğü için “AsyncEventInvoke” metriklerini izleyin ve DeadLetterErrors ile Throttles üzerine CloudWatch Alarms kurun. Servisler arasında uçtan uca izler (trace) elde etmek ve cold-start’ları, aşağı akış (downstream) gecikmelerini ve istisnaları görselleştirmek için X-Ray izlemeyi etkinleştirin (aws lambda update-function-configuration –function-name MyFn –tracing-config Mode=Active).

Hata kalıplarını hızla bulmak için yapılandırılmış JSON logları ve CloudWatch Logs Insights sorgularını kullanın; idempotency kontrollerini kodunuza ekleyin ve korelasyon ID’lerini loglara kaydedin. Dağıtık izleme (distributed tracing) için, otomatik bağlamın kaybolduğu EventBridge/SNS akışlarında, izleme ID’lerini (trace ID) olay (event) yüklerinde açıkça yayın. SQS olay kaynağı eşleştirmeleri (event-source mappings) için ApproximateAgeOfOldestMessage metriğini izleyin ve bu değerin artması durumunda alarm kurun; bu durum geri basınç (backpressure) veya kısıtlamayı (throttling) gösterir. Lambda Throttles metriğini yakalayıp bu konuda uyarılar oluşturun ve atanan eş zamanlılık (provisioned concurrency) kullanım/maliyet dengesini takip edin.

Yaygın Hatalar ve Karar Kriterleri

Pratik Problem: Örnek Senaryo

AcmePayments, EventBridge üzerinden yüksek hacimli ödeme olayları (event) alıyor ve yoğun zamanlarda aralıklı olarak Lambda kısıtlaması (throttling) ve yinelenen işlemlerle karşılaşıyor. Güvenilir işlemeye, veri kaybı olmamasına ve DynamoDB üzerindeki aşağı akış (downstream) yükünün sınırlı olmasına ihtiyaçları var.

  1. Ödeme olaylarını eşleştirmek için bir EventBridge özel veri yolu (custom bus) ve kural oluşturun; hedef yapılandırmasında DeadLetterConfig ve RetryPolicy ile dayanıklı bir hedef olarak bir SQS FIFO kuyruğu ekleyin.
  2. Lambda’yı, aşağı akış (downstream) kapasitesine göre ayarlanmış batch size ve >= fonksiyon zaman aşımı * 2 olarak ayarlanmış visibility timeout ile SQS kuyruğunu yoklayacak (event source mapping) şekilde yapılandırın.
  3. DynamoDB yazma patlamalarını sınırlamak için Lambda için eş zamanlılık ayırın (aws lambda put-function-concurrency …); düşük gecikme gerekiyorsa küçük bir havuz için atanan eş zamanlılık (provisioned concurrency) uygulayın.
  4. payment-id ile anahtarlanmış DynamoDB koşullu yazmalarını (conditional writes) kullanarak idempotency’yi uygulayın ve idempotency kayıtlarını temizlik için TTL ile saklayın.
  5. İşlemeyi izlemek için olayda (event) bir korelasyon ID’si ile X-Ray izlemeyi ve yapılandırılmış logları etkinleştirin; ApproximateAgeOfOldestMessage, Throttles ve DLQ metrikleri üzerine CloudWatch alarmları kurun.

Gerekçe: EventBridge’i SQS ile ayrıştırmak, dayanıklı arabelleğe alma (buffering) ve yeniden deneme semantiği sağlar; ayrılmış eş zamanlılık (reserved concurrency) aşağı akış (downstream) DynamoDB’yi ani yük patlamalarından korur, idempotency yinelenen işlemleri önler ve izleme/alarmlar hata modlarına karşı operasyonel görünürlük sağlar.


Veritabanları ve Önbelleğe Alma · Tüm alanlar · Maliyet Yönetimi ve Kaynak Etiketleme

Bu soruları çözün → · ExamRoll.io’da süreli pratik →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Sınavınızı geçin →

Amazon'a göz atın →

Related guides

Hepsi bir arada erişim

Tek abonelik. Her sınav.

Her plan, sınırsız cevap aramayı, pratik testlerini, AI açıklamalarını ve tam kaynak kütüphanesini — 20'den fazla dilde — açar.

Aylık
24.87
Just €0.83/day
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

En iyi değer
12 ay
179.87
Just €0.49/daySave 40%
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

✓ Ücretsiz plan dahil · ✓ İstediğiniz zaman iptal edin · ✓ Tüm planlar tam ürünü açar