Reserved concurrency และการ throttle
Reserved concurrency กำหนดขีดจำกัดสูงสุดแบบเด็ดขาดว่าฟังก์ชัน Lambda จะรันพร้อมกันได้กี่ instance เมื่อตั้ง reserved concurrency เป็น 5 Lambda จะรับประกันว่า 5 slot นั้นพร้อมใช้งานสำหรับฟังก์ชันของคุณเสมอ แต่ก็หมายความว่า request ที่ 6 ซึ่งเข้ามาพร้อมกันจะถูก throttle
การตั้งค่านี้มีประโยชน์เมื่อฟังก์ชันเขียนข้อมูลไปยัง resource ปลายทาง (เช่น ฐานข้อมูล) ที่รองรับการเชื่อมต่อได้จำนวนจำกัด หากไม่มี reserved concurrency การรับส่งข้อมูลที่พุ่งสูงขึ้นอย่างฉับพลันอาจทำให้ฐานข้อมูลรับภาระไม่ไหว เพราะ Lambda รันพร้อมกันเป็นร้อย instance
อย่างไรก็ตาม มีข้อแลกเปลี่ยน: slot ที่จองไว้จะถูกหักออกจาก concurrency pool ทั้งหมดของบัญชี (ค่าเริ่มต้น 1,000) หากตั้ง reserved concurrency เป็น 100 สำหรับฟังก์ชันหนึ่ง จะเหลือ slot เพียง 900 สำหรับฟังก์ชันอื่นทั้งหมดในบัญชี
จะเกิดอะไรขึ้นเมื่อฟังก์ชันที่มี reserved concurrency เป็น 5 ได้รับ request ที่ 6 พร้อมกัน?
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Serverless Applications with AWS Lambda
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำจริง
เปลี่ยนทฤษฎีให้เป็นการลงมือทำด้วยแบบฝึกหัดเชิงโต้ตอบหนึ่งในของเรา
เริ่มแบบฝึกหัด