Bir görüntü işleme şirketinin, görüntüleri bir Amazon S3 bucket'ına yükleyen bir web uygulaması vardır. S3 olay bildirimleri, nesne oluşturma olaylarını bir Amazon Simple Queue Service (Amazon SQS) standart kuyruğuna yayınlar. SQS kuyruğu, görüntüleri işleyen ve sonuçları kullanıcılara e-posta ile gönderen bir AWS Lambda fonksiyonu için olay kaynağıdır. Kullanıcılar, yüklenen her görüntü için birden fazla e-posta aldıklarını bildirmektedir. Bir çözümler mimarı, SQS mesajlarının Lambda fonksiyonunu birden fazla kez çağırdığını ve bunun da yinelenen e-postalara neden olduğunu tespit eder. Çözümler mimarı, en AZ operasyonel yük ile bu sorunu çözmek için ne yapmalıdır?
Bir cevap seçin
Cevabınızı kontrol etmek için bir seçeneğe dokunun.
Doğru cevap: SQS kuyruğundaki görünürlük zaman aşımını (visibility timeout), fonksiyon zaman aşımı ve batch window zaman aşımının toplamından daha büyük bir değere yükseltin..
Neden bu cevap
SQS kuyruğundaki görünürlük zaman aşımını artırmak, Lambda fonksiyonunun bir mesajı işlerken diğer tüketicilerin (bu durumda aynı Lambda fonksiyonunun başka bir çağrısı) o mesajı tekrar almasını engeller. Mevcut sorun, Lambda'nın bir mesajı işlerken görünürlük zaman aşımının dolması ve SQS'in mesajı tekrar görünür hale getirerek başka bir Lambda çağrısının aynı mesajı işlemesine neden olmasıdır. Görünürlük zaman aşımını fonksiyonun çalışma süresi ve toplu iş penceresi (batch window) toplamından daha uzun bir değere ayarlamak, mesajın işlenmesi bitene kadar diğer tüketiciler için görünmez kalmasını sağlar ve böylece yinelenen işlemeyi önler. Diğer seçenekler neden yanlış: Uzun yoklama (long polling) gecikmeyi azaltır ve boş yanıtları en aza indirir ancak yinelenen işlemeyi doğrudan çözmez. SQS FIFO kuyruğu, mesajların sırasını ve tek seferlik işlemeyi garanti eder, ancak standart kuyruktan FIFO'ya geçiş daha yüksek operasyonel yük getirir ve mevcut sorunun temel nedeni görünürlük zaman aşımıdır. Lambda fonksiyonunun mesajı işlenmeden hemen sonra silmesi, işleme başarısız olursa mesajın kaybolmasına neden olabilir ve bu da veri kaybına yol açar.
Sonsuz cevap arayışı olmadan sınavınızı geçin
Bu sınav için her doğrulanmış soruyu ve açıklamayı tek bir yerde edinin ve saatlerce süren hazırlıktan tasarruf edin. 1.000'den fazla sertifika · 20'den fazla dil · ücretsiz başlayın.
Sınavınızı daha hızlı geçin → Kart gerekmez