Bir Lambda işlevi bir SQS kuyruğu tarafından tetiklenir ve yanıt vermesi 60 saniyeye kadar sürebilen üçüncü taraf bir ML API'sini çağırır. Lambda zaman aşımı 65 saniyedir. Geliştirici, işlevin bazen yinelenen SQS mesajlarını işlediğini görüyor. Geliştirici, işlevin yinelenenleri işlememesi için neyi değiştirmelidir?
Bir cevap seçin
Cevabınızı kontrol etmek için bir seçeneğe dokunun.
Doğru cevap: SQS kuyruğunun görünürlük zaman aşımını, üçüncü taraf API'sinin maksimum yanıt süresinden daha büyük olacak şekilde ayarlayın..
Neden bu cevap
Lambda işlevi, bir SQS mesajını işlerken üçüncü taraf API'sine yapılan çağrı 60 saniyeye kadar sürebilir. Lambda zaman aşımı 65 saniye olarak ayarlanmış olsa da, SQS kuyruğunun varsayılan görünürlük zaman aşımı genellikle 30 saniyedir. Eğer işlev 30 saniyeden uzun sürerse, SQS mesajı tekrar görünür hale gelir ve başka bir Lambda örneği tarafından işlenebilir, bu da yinelenen işlemeye yol açar. SQS kuyruğunun görünürlük zaman aşımını, üçüncü taraf API'sinin maksimum yanıt süresinden (60 saniye) daha büyük bir değere (örneğin 70 saniye) ayarlamak, mesajın işlenmesi bitene kadar diğer tüketiciler tarafından görünmez kalmasını sağlar. Diğer seçenekler: Lambda işlevinin bellek tahsisini artırmak, performansı etkileyebilir ancak yinelenen işleme sorununu çözmez. Lambda işlevinin zaman aşımı ayarını artırmak, işlevin daha uzun süre çalışmasına izin verir ancak SQS görünürlük zaman aşımı kısa kalırsa yine de yinelenen işlemeye neden olabilir. SQS kuyruğunun teslimat gecikmesini artırmak, mesajların kuyruğa gönderildikten sonra ne kadar süreyle görünmez kalacağını belirler, bu da ilk teslimatı geciktirir ancak yinelenen işleme sorununu çözmez.
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