- การประมวลผล›
- AWS Lambda›
- คำถามที่พบบ่อย
คำถามที่พบบ่อยเกี่ยวกับ AWS Lambda
หัวข้อของหน้า
ข้อมูลทั่วไปข้อมูลทั่วไป
คำถาม: AWS Lambda คืออะไร
คำถาม: การประมวลผลแบบไร้เซิร์ฟเวอร์คืออะไร
การประมวลผลแบบไร้เซิร์ฟเวอร์ช่วยให้คุณสามารถสร้างและเรียกใช้แอปพลิเคชันและบริการได้โดยไม่ต้องมีเซิร์ฟเวอร์ ด้วยการประมวลผลแบบไร้เซิร์ฟเวอร์ แอปพลิเคชันของคุณยังคงทำงานบนเซิร์ฟเวอร์ แต่ AWS จะเป็นผู้จัดการเซิร์ฟเวอร์ทั้งหมด หัวใจของการประมวลผลแบบไร้เซิร์ฟเวอร์คือ AWS Lambda ซึ่งช่วยให้คุณเรียกใช้โค้ดได้โดยไม่ต้องจัดเตรียมหรือจัดการเซิร์ฟเวอร์
คำถาม: เหตุการณ์อะไรที่สามารถเรียกใช้ฟังก์ชัน AWS Lambda ได้
โปรดดูรายชื่อแหล่งเหตุการณ์ทั้งหมดได้จากเอกสารประกอบของเรา
คำถาม: ฉันควรใช้ AWS Lambda กับ Amazon EC2 เมื่อใด
Amazon Web Services เสนอบริการประมวลผลเพื่อตอบสนองความต้องการหลากหลายรูปแบบ
Amazon EC2 มอบความยืดหยุ่นโดยมีอินสแตนซ์หลากหลายประเภทและตัวเลือกในการปรับแต่งระบบปฏิบัติการ ระบบเครือข่ายและการตั้งค่าความปลอดภัย รวมถึงสแตกซอฟต์แวร์ทั้งหมด ซึ่งช่วยให้คุณสามารถย้ายแอปพลิเคชันที่มีอยู่ไปยังระบบคลาวด์ได้อย่างง่ายดาย ด้วย Amazon EC2 คุณมีหน้าที่รับผิดชอบในการจัดหากำลังการผลิต ติดตามตรวจสอบสุขภาพและประสิทธิภาพของฟลีต และออกแบบเพื่อรองรับความผิดพลาดและความสามารถในการปรับขนาด AWS Elastic Beanstalk นำเสนอบริการที่ใช้งานง่ายสำหรับการปรับใช้และการปรับขนาดเว็บแอปพลิเคชันซึ่งคุณยังคงความเป็นเจ้าของไว้ และควบคุมอินสแตนซ์ EC2 พื้นฐานได้อย่างเต็มรูปแบบ Amazon EC2 Container Service คือบริการด้านการจัดการที่ปรับขนาดได้ ซึ่งรองรับคอนเทนเนอร์ Docker และช่วยให้คุณสามารถเรียกใช้แอปพลิเคชันที่เผยแพร่ในคลัสเตอร์ที่มีการจัดการของอินสแตนซ์ Amazon EC2 ได้อย่างง่ายดาย
AWS Lambda ช่วยให้สามารถเรียกใช้โค้ดได้ง่ายเพื่อตอบสนองต่อเหตุการณ์ต่างๆ เช่น การเปลี่ยนแปลงบัคเก็ต Amazon S3, การอัปเดตตาราง Amazon DynamoDB หรือเหตุการณ์ที่กำหนดเองที่สร้างโดยแอปพลิเคชันหรืออุปกรณ์ของคุณ Lambda ช่วยให้คุณไม่ต้องจัดเตรียมอินสแตนซ์ของคุณเอง โดย Lambda จะดำเนินกิจกรรมด้านการดำเนินงานและการจัดการทั้งหมดแทนคุณ รวมถึงการจัดเตรียมความจุ การดูแลสภาพของฟลีต การใช้แพทช์รักษาความปลอดภัยกับทรัพยากรการประมวลผลพื้นฐาน การปรับใช้โค้ด การเรียกใช้ส่วนหน้าของบริการเว็บ รวมถึงการตรวจสอบและการบันทึกโค้ดของคุณ AWS Lambda ให้การปรับขนาดที่สามารถทำได้ง่ายและความพร้อมใช้งานสูงสำหรับโค้ดของคุณโดยที่คุณไม่ต้องออกแรงเพิ่ม
คำถาม: โค้ดประเภทใดที่สามารถเรียกใช้งาน AWS Lambda ได้
คำถาม: AWS Lambda รองรับภาษาอะไรบ้าง
คำถาม: ฉันสามารถเข้าถึงโครงสร้างพื้นฐานที่ AWS Lambda ทำงานได้หรือไม่
คำถาม: AWS Lambda แยกโค้ดของฉันอย่างไร
คำถาม: AWS Lambda ทำให้โค้ดของฉันปลอดภัยอย่างไร
คำถาม: AWS Region ใดที่สามารถใช้งาน AWS Lambda ได้
ฟังก์ชัน AWS Lambda
คำถาม: ฟังก์ชัน AWS Lambda คืออะไร
คำถาม: AWS Lambda จะใช้อินสแตนซ์ฟังก์ชันใหม่อีกครั้งหรือไม่
เพื่อปรับปรุงประสิทธิภาพ AWS Lambda อาจเลือกที่จะเก็บอินสแตนซ์ของฟังก์ชันของคุณไว้และนำมาใช้ใหม่เพื่อรองรับคำขอในภายหลังแทนที่จะสร้างสำเนาใหม่ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับวิธีที่ Lambda ใช้งานอินสแตนซ์ฟังก์ชันใหม่อีกครั้ง โปรดอ่านเอกสารประกอบของเรา โค้ดของคุณไม่ควรคาดเดาว่าสิ่งนี้จะเกิดขึ้นเสมอ
ถาม: จะทำอย่างไรถ้าฉันต้องการพื้นที่ว่างบนดิสก์สำหรับฟังก์ชัน AWS Lambda
คุณสามารถกำหนดค่าฟังก์ชัน Lambda แต่ละรายการด้วยพื้นที่จัดเก็บชั่วคราวระหว่าง 512 MB ถึง 10,240 MB ได้โดยเพิ่มขึ้นทีละ 1 MB พื้นที่จัดเก็บชั่วคราวมีอยู่ในไดเรกทอรี /tmp ของแต่ละฟังก์ชัน
แต่ละฟังก์ชันมีสิทธิ์เข้าถึงพื้นที่จัดเก็บข้อมูล 512 MB โดยไม่มีค่าใช้จ่ายเพิ่มเติม เมื่อกำหนดค่าฟังก์ชันของคุณด้วยพื้นที่จัดเก็บชั่วคราวมากกว่า 512 MB คุณจะถูกเรียกเก็บเงินตามปริมาณพื้นที่จัดเก็บที่คุณกำหนดค่า และตามระยะเวลาที่ฟังก์ชันของคุณทำงานโดยคิดเพิ่มทีละ 1 มิลลิวินาที เพื่อเป็นการเปรียบเทียบ ใน Region สหรัฐอเมริกาฝั่งตะวันออก (โอไฮโอ) ราคาพื้นที่จัดเก็บชั่วคราวของ AWS Fargate คือ 0.000111 USD ต่อ GB ต่อชั่วโมง หรือ 0.08 USD ต่อ GB ต่อเดือน ราคาปริมาณพื้นที่จัดเก็บ gp3 ของ Amazon EBS ในสหรัฐอเมริกาฝั่งตะวันออก (โอไฮโอ) คือ 0.08 USD ต่อ GB ต่อเดือน ราคาพื้นที่จัดเก็บชั่วคราวของ AWS Lambda คือ 0.0000000309 USD ต่อ GB ต่อวินาที หรือ 0.000111 USD ต่อ GB ต่อชั่วโมง และ 0.08 USD ต่อ GB ต่อเดือน หากต้องการเรียนรู้เพิ่มเติม โปรดดูค่าบริการ AWS Lambda
ถาม: ฉันจะกำหนดค่าแอปพลิเคชันของฉันให้ใช้พื้นที่จัดเก็บชั่วคราวของ AWS Lambda ได้อย่างไร
ถาม: พื้นที่จัดเก็บชั่วคราวของ AWS Lambda มีการเข้ารหัสหรือไม่
ถาม: ฉันสามารถใช้มาตรวัดใดได้บ้างเพื่อตรวจสอบการใช้พื้นที่จัดเก็บชั่วคราวของ AWS Lambda
คุณสามารถใช้มาตรวัด AWS CloudWatch Lambda Insight เพื่อตรวจสอบการใช้พื้นที่จัดเก็บชั่วคราวของคุณได้ หากต้องการเรียนรู้เพิ่มเติม โปรดดูเอกสารประกอบเกี่ยวกับ AWS CloudWatch Lambda Insight
ถาม: ฉันควรใช้ Amazon S3, Amazon EFS หรือพื้นที่จัดเก็บชั่วคราวของ AWS Lambda สำหรับแอปพลิเคชันแบบไร้เซิร์ฟเวอร์เมื่อใด
หากแอปพลิเคชันของคุณต้องการพื้นที่จัดเก็บที่คงทนถาวร ให้พิจารณาใช้ Amazon S3 หรือ Amazon EFS หากแอปพลิเคชันของคุณต้องการจัดเก็บข้อมูลที่จำเป็นสำหรับโค้ดในการเรียกใช้ฟังก์ชันเดียว ให้ลองใช้พื้นที่จัดเก็บชั่วคราวของ AWS Lambda เป็นแคชชั่วคราว หากต้องการเรียนรู้เพิ่มเติม โปรดดูที่การเลือกระหว่างตัวเลือกการจัดเก็บข้อมูล AWS Lambda ในเว็บแอป
ถาม: ฉันสามารถใช้พื้นที่จัดเก็บชั่วคราวในขณะที่เปิดใช้การทำงานพร้อมกันที่มีการเตรียมใช้งานสำหรับฟังก์ชันของฉันได้หรือไม่
ใช่ อย่างไรก็ตาม หากแอปพลิเคชันของคุณต้องการพื้นที่จัดเก็บถาวร ให้พิจารณาใช้ Amazon EFS หรือ Amazon S3 หากคุณเปิดใช้การทำงานพร้อมกันที่มีการเตรียมใช้งานสำหรับฟังก์ชันของคุณ โค้ดเริ่มต้นของฟังก์ชันของคุณจะทำงานระหว่างการจัดสรรและทำงานทุกๆ สองสามชั่วโมง เนื่องจากจะนำอินสแตนซ์ที่ทำงานอยู่ของฟังก์ชันของคุณกลับมาใช้ใหม่ คุณสามารถดูเวลาเริ่มต้นในบันทึกและการติดตามหลังจากที่อินสแตนซ์ประมวลผลคำขอแล้ว อย่างไรก็ตาม ระบบจะเรียกเก็บค่าบริการจากการเริ่มต้นนี้ แม้ว่าอินสแตนซ์จะไม่ประมวลผลคำขอก็ตาม ลักษณะการเริ่มต้นการทำงานพร้อมกันที่มีการเตรียมใช้งานนี้อาจส่งผลต่อวิธีที่ฟังก์ชันของคุณโต้ตอบกับข้อมูลที่คุณจัดเก็บไว้ในพื้นที่จัดเก็บชั่วคราว แม้ว่าฟังก์ชันของคุณจะไม่ได้ประมวลผลคำขอก็ตาม หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน โปรดดูเอกสารประกอบที่เกี่ยวข้อง
ถาม: ฉันจะกำหนดค่าแอปพลิเคชันของฉันให้ใช้พื้นที่จัดเก็บชั่วคราวของ AWS Lambda ได้อย่างไร
ถาม: พื้นที่จัดเก็บชั่วคราวของ AWS Lambda มีการเข้ารหัสหรือไม่
ถาม: ฉันสามารถใช้มาตรวัดใดได้บ้างเพื่อตรวจสอบการใช้พื้นที่จัดเก็บชั่วคราวของ AWS Lambda
คุณสามารถใช้มาตรวัด AWS CloudWatch Lambda Insight เพื่อตรวจสอบการใช้พื้นที่จัดเก็บชั่วคราวของคุณได้ หากต้องการเรียนรู้เพิ่มเติม โปรดดูเอกสารประกอบเกี่ยวกับ AWS CloudWatch Lambda Insight
ถาม: เหตุใดฟังก์ชัน AWS Lambda ต้องเป็นแบบไม่มีสถานะ
คำถาม: ฉันสามารถใช้เธรดและกระบวนการในโค้ดฟังก์ชัน AWS Lambda ได้หรือไม่
คำถาม: มีข้อจำกัดใดบ้างในการใช้งานโค้ดฟังก์ชัน AWS Lambda
คำถาม: ฉันจะสร้างฟังก์ชัน AWS Lambda โดยใช้คอนโซลของ Lambda ได้อย่างไร
ถ้าคุณใช้ Node.js หรือ Python คุณสามารถเขียนโค้ดสำหรับฟังก์ชันของคุณโดยใช้ตัวแก้ไขโค้ดใน AWS Lambda Console ซึ่งจะช่วยให้คุณสามารถเขียนและทดสอบฟังก์ชันของคุณ และดูผลลัพธ์ของการเรียกใช้ฟังก์ชันในสภาพแวดล้อมแบบ IDE ที่มีประสิทธิภาพได้ ไปที่คอนโซลเพื่อเริ่มต้นใช้งาน
นอกจากนี้คุณยังสามารถบีบอัดโค้ด (และไลบรารีที่เกี่ยวข้อง) เป็นไฟล์ ZIP และอัปโหลดโดยใช้ Console ของ AWS Lambda จากสภาพแวดล้อมท้องถิ่นของคุณ หรือระบุตำแหน่ง Amazon S3 ที่มีไฟล์ ZIP อยู่ ไฟล์อัปโหลดต้องมีขนาดไม่เกิน 50MB (แบบบีบอัด) คุณสามารถใช้ปลั๊กอิน AWS Eclipse เพื่อเขียนและปรับใช้ฟังก์ชัน Lambda ใน Java ได้ คุณสามารถใช้ปลั๊กอิน Virtual Studio เพื่อเขียนและปรับใช้ฟังก์ชัน Lambda ใน C# และ Node.js ได้
คำถาม: ฉันจะสร้างฟังก์ชัน AWS Lambda โดยใช้ Lambda CLI ได้อย่างไร
คุณสามารถบีบอัดโค้ด (และไลบรารีที่เกี่ยวข้อง) เป็นไฟล์ ZIP และอัปโหลดโดยใช้ AWS CLI จากสภาพแวดล้อมท้องถิ่นของคุณ หรือระบุตำแหน่ง Amazon S3 ที่มีไฟล์ ZIP อยู่ ไฟล์อัปโหลดต้องมีขนาดไม่เกิน 50MB (แบบบีบอัด) ไปที่คู่มือเริ่มต้นใช้งาน Lambda เพื่อเริ่มต้นใช้งาน
คำถาม: AWS Lambda รองรับตัวแปรทางสภาพแวดล้อมหรือไม่
ใช่ คุณสามารถสร้างและแก้ไขตัวแปรทางสภาพแวดล้อมได้จาก AWS Lambda Console, CLI หรือ SDK หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับตัวแปรทางสภาพแวดล้อม โปรดดูเอกสารประกอบ
คำถาม: ฉันสามารถจัดเก็บข้อมูลที่สำคัญในตัวแปรทางสภาพแวดล้อมได้หรือไม่
สำหรับข้อมูลที่สำคัญ เช่น รหัสผ่านของฐานข้อมูล เราขอแนะนำให้ใช้การเข้ารหัสฝั่งไคลเอ็นต์โดยใช้ AWS Key Management Service และจัดเก็บค่าผลลัพธ์เป็น Ciphertext ในตัวแปรสภาพแวดล้อมของคุณ คุณต้องใส่ลอจิกในโค้ดฟังก์ชัน AWS Lambda เพื่อถอดรหัสค่าเหล่านี้
คำถาม: ฉันจะสามารถจัดการฟังก์ชัน AWS Lambda ได้อย่างไร
คุณสามารถปรับและรักษาความปลอดภัยให้ทรัพยากรที่เกี่ยวข้องกับฟังก์ชัน Lambda ของคุณโดยใช้ Lambda API หรือคอนโซล หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับเรื่องนี้ โปรดดูเอกสารประกอบ
ถาม: ฉันสามารถแบ่งปันโค้ดข้ามฟังก์ชันได้หรือไม่
ได้ คุณสามารถจัดแพคเกจโค้ด (เฟรมเวิร์ก, SDK, ไลบรารี และอีกมากมาย) เช่น Lambda Layer และจัดการแล้วแบ่งปันโค้ดกับหลายฟังก์ชันได้อย่างง่ายดาย
คำถาม: ฉันจะตรวจสอบฟังก์ชัน AWS Lambda ได้อย่างไร
AWS Lambda ตรวจสอบฟังก์ชัน Lambda แทนคุณโดยอัตโนมัติ รายงานเมตริกแบบเรียลไทม์ผ่าน Amazon CloudWatch รวมถึงคำขอทั้งหมด การใช้งานพร้อมกันระดับบัญชีและฟังก์ชัน เวลาแฝง อัตราข้อผิดพลาด และคำขอที่ถูก จำกัด คุณสามารถดูสถิติสำหรับแต่ละฟังก์ชัน Lambda ได้ผ่านทาง Console ของ Amazon CloudWatch หรือผ่าน Console ของ AWS Lambda นอกจากนี้คุณยังสามารถเรียก API ตรวจสอบบุคคลภายนอกในฟังก์ชัน Lambda ได้ด้วย
ไปที่ตัววัดการแก้ปัญหาของ CloudWatch เพื่อเรียนรู้เพิ่มเติม ค่ามาตรฐานสำหรับ AWS Lambda จะนำมาใช้กับตัววัดในตัวของ Lambda
คำถาม: ฉันจะแก้ไขปัญหาข้อผิดพลาดในฟังก์ชัน AWS Lambda ได้อย่างไร
AWS Lambda ทำงานร่วมกับ Amazon CloudWatch Logs โดยอัตโนมัติ โดยจะสร้างกลุ่มบันทึกสำหรับแต่ละฟังก์ชัน Lambda และจัดเตรียมรายการบันทึกเหตุการณ์วงจรชีวิตของแอปพลิเคชันพื้นฐาน รวมถึงการบันทึกทรัพยากรที่ใช้สำหรับการใช้ฟังก์ชันนั้นในแต่ละครั้ง คุณสามารถแทรกบันทึกการเข้าสู่ระบบเพิ่มเติมลงในโค้ดของคุณได้อย่างง่ายดาย นอกจากนี้คุณยังสามารถเรียก API บันทึกการเข้าสู่ระบบของบุคคลภายนอกในฟังก์ชัน Lambda ได้อีกด้วย ไปที่การแก้ไขปัญหาฟังก์ชัน Lambda เพื่อเรียนรู้เพิ่มเติม อัตรา Amazon CloudWatch logs จะได้รับการนำมาใช้
คำถาม: ฉันจะปรับขนาดฟังก์ชัน AWS Lambda ได้อย่างไร
คำถาม: ทรัพยากรการประมวลผลจะถูกกำหนดให้กับฟังก์ชัน AWS Lambda อย่างไร
ในรูปแบบทรัพยากร AWS Lambda คุณจะเลือกจำนวนหน่วยความจำที่คุณต้องการสำหรับฟังก์ชันของคุณและได้รับการจัดสรรพลังงาน CPU และทรัพยากรอื่นๆ ตามสัดส่วน ตัวอย่างเช่น การเลือกหน่วยความจำ 256 MB จะจัดสรรพลังงาน CPU ให้กับฟังก์ชัน Lambda ของคุณมากกว่าสองเท่าโดยประมาณหากเทียบกับการขอหน่วยความจำ 128 MB และจัดสรรพลังงาน CPU เพียงครึ่งเดียวหากเทียบกับการเลือกหน่วยความจำ 512 MB หากต้องการเรียนรู้เพิ่มเติม ให้ดูที่เอกสารประกอบการกำหนดค่าฟังก์ชัน
คุณสามารถตั้งค่าหน่วยความจำของคุณได้ตั้งแต่ 128 MB ไปจนถึง 10,240 MB
คำถาม: เมื่อใดที่ฉันควรใช้ฟังก์ชัน AWS Lambda ที่มีหน่วยความจำมากกว่า 3,008 MB
คำถาม: ฟังก์ชัน AWS Lambda ใช้เวลาดำเนินการเท่าใด
คำถาม: ฉันจะถูกเรียกเก็บเงินสำหรับการใช้งานฟังก์ชัน AWS Lambda อย่างไร
AWS Lambda มีค่าใช้จ่ายตามจำนวนครั้งที่ใช้งาน โปรดดูรายละเอียดในหน้าค่าบริการ AWS Lambda
คำถาม: ฉันสามารถประหยัดค่าใช้จ่ายใน AWS Lambda ด้วย Compute Savings Plans ได้หรือไม่
คำถาม: AWS Lambda รองรับการกำหนดเวอร์ชันหรือไม่
ใช่ โดยค่าเริ่มต้นแล้ว ฟังก์ชัน AWS Lambda แต่ละอันจะมีโค้ดเวอร์ชันปัจจุบันอยู่แล้ว ไคลเอ็นต์ของฟังก์ชัน Lambda ของคุณสามารถเรียกใช้เวอร์ชันที่เฉพาะเจาะจงหรือรับการใช้งานล่าสุดได้ โปรดอ่านเอกสารประกอบเกี่ยวกับการกำหนดเวอร์ชันของฟังก์ชัน Lambda
คำถาม: ฟังก์ชัน AWS Lambda ของฉันจะพร้อมเรียกใช้งานได้เมื่อใดหลังจากอัปโหลดโค้ดแล้ว
คำถาม: ฉันสามารถใช้เวอร์ชันไลบรารีของตัวเองที่รองรับได้หรือไม่
คำถาม: มีวิธีในการกำหนดราคาตามระดับขั้นอย่างไร
AWS Lambda เสนอระดับราคาพร้อมส่วนลดสำหรับระยะเวลาฟังก์ชันตามคำขอรายเดือนที่สูงกว่าเกณฑ์ที่กำหนด ราคาตามระดับขั้นสามารถใช้ได้กับฟังก์ชันที่ทำงานบนสถาปัตยกรรมทั้ง x86 และ Arm ระดับราคาของ Lambda จะใช้เพื่อรวมระยะเวลาตามความต้องการรายเดือนของฟังก์ชันของคุณที่ทำงานบนสถาปัตยกรรมเดียวกัน (x86 หรือ Arm ตามลำดับ) ในภูมิภาคเดียวกันภายในบัญชี หากคุณกำลังใช้การเรียกเก็บเงินรวมใน AWS Organizations ระดับราคาจะถูกนำไปใช้กับระยะเวลารวมรายเดือนของฟังก์ชันของคุณที่ทำงานบนสถาปัตยกรรมเดียวกัน ในภูมิภาคเดียวกัน ทั่วทุกบัญชีในองค์กร ตัวอย่างเช่น หากคุณใช้งานฟังก์ชัน x86 Lambda ในภูมิภาคสหรัฐอเมริกาฝั่งตะวันออก (โอไฮโอ) คุณจะต้องจ่าย 0.0000166667 USD ในทุก GB-วินาทีในช่วง 6 พันล้าน GB-วินาทีแรกต่อเดือน และ 0.0000150000 USD ในทุก GB-วินาทีสำหรับ 9 พันล้านถัดไป GB-วินาทีต่อเดือน และ 0.0000133334 USD สำหรับทุก GB-วินาที ที่มากกว่า 15 พันล้าน GB-วินาทีต่อเดือน ในภูมิภาคนั้น ราคาสำหรับคำขอของกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน และระยะเวลาการทำงานพร้อมกันที่มีการเตรียมใช้งานยังคงไม่เปลี่ยนแปลง สำหรับข้อมูลเพิ่มเติม โปรดดูค่าบริการ AWS Lambda
ถาม: ฉันสามารถได้ประโยชน์จากทั้งค่าบริการตามลำดับขั้น และ Compute Savings Plans ได้หรือไม่
ใช่ การใช้ Lambda ที่อยู่ในแผนการออมรายชั่วโมงจะนำมาคำนวนค่าใช้จ่ายด้วยเรต CSP พร้อมส่วนลด การใช้งานที่นอกเหนือจากแผนการใช้งานนี้จะถูกเก็บเงินตามระดับการใช้งานรายเดือนของคุณ
ใช้ AWS Lambda เพื่อประมวลผลเหตุการณ์ AWS
คำถาม: แหล่งเหตุการณ์คืออะไร
คำถาม: แหล่งเหตุการณ์ใดที่สามารถใช้กับ AWS Lambda ได้
โปรดดูรายชื่อแหล่งเหตุการณ์ทั้งหมดได้จากเอกสารประกอบของเรา
คำถาม: เหตุการณ์จะแสดงผลใน AWS Lambda อย่างไร
เหตุการณ์จะถูกส่งผ่านไปยังฟังก์ชัน Lambda เป็นพารามิเตอร์อินพุตเหตุการณ์ สำหรับแหล่งเหตุการณ์ที่ซึ่งเหตุการณ์มาถึงเป็นชุด เช่น Amazon SQS, Amazon Kinesis และ Amazon DynamoDB Streams พารามิเตอร์เหตุการณ์สามารถมีเหตุการณ์หลายรายการในการเรียกใช้หนึ่งครั้ง ทั้งนี้ขึ้นอยู่กับขนาดชุดที่คุณขอ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการแจ้งเตือนเหตุการณ์ Amazon S3 โปรดไปที่การกำหนดค่าการแจ้งเตือนสำหรับเหตุการณ์ Amazon S3 หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Amazon DynamoDB Streams โปรดไปที่คู่มือนักพัฒนา DynamoDB Stream หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการเรียกใช้ฟังก์ชัน Lambda โดยใช้ Amazon SNS โปรดไปที่คู่มือนักพัฒนา Amazon SNS สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเหตุการณ์ Amazon Cognito โปรดไปที่ Amazon Cognito สำหรับข้อมูลเพิ่มเติมเกี่ยวกับข้อมูลบันทึก AWS CloudTrail และการตรวจสอบการเรียกใช้ API ในบริการของ AWS โปรดดูที่ AWS CloudTrail
คำถาม: ฉันจะทำให้ฟังก์ชัน AWS Lambda ตอบสนองต่อการเปลี่ยนแปลงในบัคเก็ต Amazon S3 ได้อย่างไร
คำถาม: ฉันจะทำให้ฟังก์ชัน AWS Lambda ตอบสนองต่อการอัปเดตในตาราง Amazon DynamoDB ได้อย่างไร
คำถาม: ฉันจะใช้ฟังก์ชัน AWS Lambda เพื่อประมวลผลบันทึกในสตรีม Amazon Kinesis ได้อย่างไร
คำถาม: AWS Lambda ประมวลผลข้อมูลจาก Amazon Kinesis Streams และ Amazon DynamoDB Streams ได้อย่างไร
คำถาม: ฉันควรเลือกอะไรระหว่าง AWS Lambda กับ Amazon Kinesis Data Analytics เพื่อจุดประสงค์ด้านการวิเคราะห์ของฉัน
AWS Lambda ช่วยให้คุณดำเนินการรวมข้อมูลโดยอิงตามเวลา (เช่น จำนวน ค่าสูงสุด ผลรวม ค่าเฉลี่ย เป็นต้น) ในระยะเวลาสั้นๆ ไม่เกิน 15 นาที สำหรับข้อมูลใน Amazon Kinesis หรือ Amazon DynamoDB Streams ในพาร์ติชันเชิงตรรกะหนึ่งครั้ง เช่น ส่วนข้อมูล การทำเช่นนี้ช่วยให้คุณมีตัวเลือกในการตั้งค่าการวิเคราะห์อย่างง่ายได้สะดวกสำหรับแอปพลิเคชันตามเหตุการณ์ โดยไม่ต้องเพิ่มความซับซ้อนทางสถาปัตยกรรมใด เพราะธุรกิจและตรรกะการวิเคราะห์ของคุณสามารถอยู่ในฟังก์ชันเดียวกันได้ Lambda ช่วยให้มีการรวมระยะเวลาที่ติดกันสูงสุด 15 นาทีตามการลงตราประทับเวลาของเหตุการณ์ บริการวิเคราะห์ข้อมูลของ Amazon Kinesis ช่วยให้คุณสร้างแอปพลิเคชันการวิเคราะห์ที่ซับซ้อนยิ่งขึ้นที่รองรับตัวเลือกการประมวลผลที่ยืดหยุ่นและความทนต่อข้อผิดพลาดที่มีประสิทธิภาพด้วยการประมวลผลเพียงครั้งเดียวโดยไม่ต้องทำรายการซ้ำ และสามารถดำเนินการวิเคราะห์ Data Stream ทั้งหมดในส่วนตรรกะต่าง ๆ ได้ เพียงมี KDA คุณก็สามารถวิเคราะห์ข้อมูลภายในระยะเวลาแบบรวมประเภทต่างๆ (ระยะเวลาที่ติดกัน ระยะเวลาการเอนเอียง ระยะเวลาการเปลี่ยนแปลง ระยะเวลาเซสชัน) โดยใช้เวลาของเหตุการณ์หรือเวลาในการประมวลผล
AWS Lambda | Amazon KDA | |
---|---|---|
ระยะเวลาที่ติดกัน | ใช้ได้ | ใช้ได้ |
ระยะเวลาการเอนเอียง | ใช้ไม่ได้ | ใช้ได้ |
ระยะเวลาการเปลี่ยนแปลง | ใช้ไม่ได้ | ใช้ได้ |
ระยะเวลาเซสชัน | ใช้ไม่ได้ | ใช้ได้ |
การเพิ่มคุณค่าของข้อมูล | ใช้ไม่ได้ | ใช้ได้ |
อินพุตร่วมและตารางข้อมูลอ้างอิง | ใช้ไม่ได้ | ใช้ได้ |
สตรีมอินพุตแบบแยก | ใช้ไม่ได้ | ใช้ได้ |
การประมวลผลเพียงครั้งเดียว | ใช้ไม่ได้ | ใช้ได้ |
ระยะเวลาสูงสุด | 15 นาที | ไม่จำกัด |
ขอบเขตการรวม | การแยก/ส่วน | สตรีม |
ความหมายของเวลา | เวลาของเหตุการณ์ | เวลาของเหตุการณ์ เวลาในการประมวลผล |
คำถาม: ฉันจะใช้ฟังก์ชัน AWS Lambda เพื่อตอบสนองต่อการแจ้งเตือนที่ส่งโดย Amazon Simple Notification Service (SNS) ได้อย่างไร
คำถาม: ฉันจะใช้ฟังก์ชัน AWS Lambda เพื่อตอบสนองต่ออีเมลที่ส่งโดย Amazon Simple Email Service (SES) ได้อย่างไร
คำถาม: ฉันจะใช้ฟังก์ชัน AWS Lambda เพื่อตอบสนองต่อการแจ้งเตือน Amazon CloudWatch ได้อย่างไร
อันดับแรก ให้กำหนดค่าการแจ้งเตือนเพื่อส่งการแจ้งเตือน Amazon SNS จากนั้นจาก Console ของ AWS Lambda เลือกฟังก์ชัน Lambda และเชื่อมโยงกับหัวข้อ Amazon SNS นั้น ดูคู่มือนักพัฒนา Amazon CloudWatch สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าการแจ้งเตือน Amazon CloudWatch
คำถาม: ฉันจะใช้ฟังก์ชัน AWS Lambda เพื่อตอบสนองต่อการเปลี่ยนแปลงข้อมูลผู้ใช้หรืออุปกรณ์ที่ Amazon Cognito จัดการได้อย่างไร
จาก Console ของ AWS Lambda คุณสามารถเลือกฟังก์ชันที่จะเรียกใช้เมื่อชุดข้อมูลที่เกี่ยวข้องกับกลุ่มข้อมูลระบุตัวตน Amazon Cognito ได้รับการซิงโครไนซ์ ฟังก์ชันการทำงานแบบเดียวกันนี้ยังสามารถใช้ได้ผ่าน AWS SDK และ CLI ไปที่ Amazon Cognito เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Amazon Cognito เพื่อแชร์และซิงค์ข้อมูลผ่านอุปกรณ์ของผู้ใช้
คำถาม: แอปพลิเคชันของฉันสามารถเรียกใช้ฟังก์ชัน AWS Lambda โดยตรงได้อย่างไร
คุณสามารถเรียกใช้ฟังก์ชัน Lambda ได้โดยใช้เหตุการณ์ที่กำหนดเองผ่านทาง API การเรียกใช้ของ AWS Lambda เฉพาะเจ้าของฟังก์ชันหรือบัญชี AWS อื่นที่เจ้าของให้สิทธิ์เท่านั้นที่จะสามารถเรียกใช้ฟังก์ชันได้ โปรดไปที่คู่มือนักพัฒนา Lambda เพื่อเรียนรู้เพิ่มเติม
คำถาม: การเรียกใช้ฟังก์ชัน AWS Lambda เพื่อตอบสนองต่อเหตุการณ์มีเวลาแฝงเท่าใด
คำถาม: ฉันจะสร้างแบ็คเอนด์มือถือโดยใช้ AWS Lambda ได้อย่างไร
ให้อัปโหลดโค้ดที่ต้องการให้ AWS Lambda ดำเนินการ จากนั้นเรียกใช้งานจากแอปมือถือของคุณโดยใช้ AWS Lambda SDK ที่รวมอยู่ใน AWS Mobile SDK คุณสามารถเรียกใช้ทั้งแบบทางตรง (ซิงโครนัส) และแบบอะซิงโครนัสเพื่อดึงหรือตรวจสอบข้อมูลแบบเรียลไทม์ได้ นอกจากนี้คุณยังสามารถกำหนด API เองโดยใช้ Amazon API Gateway และเรียกใช้ฟังก์ชัน Lambda ของคุณผ่านทางไคลเอ็นต์ที่รองรับ REST ได้อีกด้วย หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ AWS Mobile SDK โปรดไปที่หน้า AWS Mobile SDK หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับเกตเวย์ของ Amazon API โปรดไปที่หน้า Amazon API Gateway
คำถาม: ฉันจะเรียกฟังก์ชัน AWS Lambda ผ่าน HTTPS ได้อย่างไร
คำถาม: ฟังก์ชัน AWS Lambda ของฉันสามารถกำหนดลักษณะการทำงานให้กับอุปกรณ์และแอปสร้างคำขอได้อย่างไร
คำถาม: ฟังก์ชัน AWS Lambda ของฉันสามารถปรับเปลี่ยนพฤติกรรมตามข้อมูลประจำตัวผู้ใช้ตำแหน่งข้อมูลของแอปพลิเคชันได้อย่างไร
คำถาม: ฉันจะสร้างทักษะ Alexa โดยใช้ AWS Lambda ได้อย่างไร
คำถาม: จะเกิดอะไรขึ้นถ้าฟังก์ชันของฉันผิดพลาดขณะประมวลผลเหตุการณ์
ใช้ AWS Lambda เพื่อสร้างแอปพลิเคชัน
คำถาม: แอปพลิเคชันแบบไร้เซิร์ฟเวอร์คืออะไร
คำถาม: ฉันจะปรับใช้และจัดการแอปพลิเคชันไร้เซิร์ฟเวอร์ได้อย่างไร
คำถาม: ฉันจะค้นพบแอปพลิเคชันแบบไร้เซิร์ฟเวอร์ที่มีอยู่ซึ่งพัฒนาขึ้นโดยชุมชน AWS ได้อย่างไร
คุณสามารถเลือกจากคอลเลกชันของแอปพลิเคชันไม่ต้องใช้เซิร์ฟเวอร์ซึ่งเผยแพร่โดยนักพัฒนา บริษัท และพาร์ทเนอร์ในชุมชน AWS ด้วย AWS Serverless Application Repository หลังจากการค้นพบแอปพลิเคชันแล้ว คุณสามารถกำหนดค่าและใช้งานได้โดยตรงจาก Console ของ Lambda
คำถาม: ฉันจะติดตั้งแอปพลิเคชันไร้เซิร์ฟเวอร์โดยอัตโนมัติได้อย่างไร
คุณสามารถดำเนินการเผยแพร่แอปพลิเคชันไร้เซิร์ฟเวอร์ของคุณโดยอัตโนมัติได้โดยใช้ AWS CodePipeline และ AWS CodeDeploy CodePipeline คือบริการจัดส่งแบบต่อเนื่องที่ช่วยให้คุณสามารถจำลอง แสดงภาพ และดำเนินการขั้นตอนต่างๆ ที่จำเป็นสำหรับการเผยแพร่แอปพลิเคชันไร้เซิร์ฟเวอร์ของคุณโดยอัตโนมัติ CodeDeploy มีกลไกการปรับใช้ระบบอัตโนมัติสำหรับแอปพลิเคชันที่ใช้ Lambda CodeDeploy ช่วยให้คุณสามารถปรับแต่งการใช้งานได้ตามวิธีปฏิบัติที่ดีที่สุดที่ได้รับการยอมรับเช่นการใช้ Canary และการปรับใช้โดยตรง และช่วยให้คุณสร้างกรอบที่จำเป็นเพื่อตรวจสอบว่าโค้ดใหม่ที่มีการใช้งานนั้นปลอดภัย มั่นคง และพร้อมที่จะปล่อยสู่กระบวนการผลิตอย่างเต็มที่
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ CI/CD แบบไร้เซิร์ฟเวอร์ โปรดไปที่เอกสารประกอบของเรา
คำถาม: ฉันจะเริ่มต้นสร้างแอปพลิเคชันไร้เซิร์ฟเวอร์ได้อย่างไร
ไปที่ AWS Lambda Console และดาวน์โหลดพิมพ์เขียวแบบใดแบบหนึ่งของเราเพื่อเริ่มต้น ไฟล์ที่คุณดาวน์โหลดจะมีไฟล์ AWS SAM (ซึ่งกำหนดทรัพยากร AWS ในแอปพลิเคชันของคุณ) และไฟล์ .ZIP (ซึ่งรวมถึงโค้ดฟังก์ชันของคุณ) จากนั้นคุณสามารถใช้คำสั่ง AWS CloudFormation เพื่อรวมแพ็กเกจและปรับใช้แอปพลิเคชันแบบไร้เซิร์ฟเวอร์ที่คุณเพิ่งดาวน์โหลดมาได้ โปรดไปที่เอกสารประกอบของเราเพื่อดูรายละเอียดเพิ่มเติม
คำถาม: ฉันจะประสานงานการเรียกใช้ระหว่างหลายฟังก์ชัน AWS Lambda ได้อย่างไร
คุณสามารถใช้ AWS Step Functions เพื่อประสานงานฟังก์ชัน AWS Lambda ชุดต่าง ๆ ตามลำดับที่กำหนด คุณสามารถเรียกใช้ฟังก์ชัน Lambda หลายๆ แบบตามลำดับ ส่งผ่านข้อมูลจากที่หนึ่งไปยังอีกที่ และ/หรือแบบขนาน และ Step Functions จะรักษาสถานะไว้ในระหว่างการดำเนินการสำหรับคุณ
คำถาม: ฉันจะแก้ไขปัญหาแอปพลิเคชันไร้เซิร์ฟเวอร์ได้อย่างไร
คุณสามารถเปิดใช้งานฟังก์ชัน Lambda ของคุณสำหรับการติดตามด้วย AWS X-Ray โดยเพิ่มสิทธิ์ X-Ray ในบทบาทการดำเนินการของ Lambda และเปลี่ยน “โหมดการสืบค้นกลับ” ของฟังก์ชันเป็น “ใช้งานอยู่” เมื่อเปิดใช้งาน X-Ray สำหรับฟังก์ชัน Lambda ของคุณ AWS Lambda จะส่งข้อมูลการติดตามไปยัง X-Ray เกี่ยวกับค่าใช้จ่ายบริการของ Lambda ที่เกิดขึ้นเมื่อเรียกใช้ฟังก์ชันของคุณ ซึ่งจะช่วยให้ข้อมูลเชิงลึกแก่คุณเช่นค่าใช้จ่ายบริการ Lambda เวลาเริ่มทำงาน และเวลาการทำงานของฟังก์ชัน นอกจากนี้คุณยังสามารถใช้ X-Ray SDK ในแพคเกจการติดตั้ง Lambda ของคุณเพื่อสร้างกลุ่มการติดตาม อธิบายร่องรอย หรือดูส่วนการติดตามสำหรับการเรียกดาวน์สตรีมจากฟังก์ชัน Lambda ของคุณ X-Ray SDK มีให้บริการแล้วสำหรับ Node.js และ Java โปรดไปที่การแก้ไขปัญหาแอปพลิเคชันที่ใช้งาน Lambda เพื่อเรียนรู้เพิ่มเติม จะใช้อัตรา AWS X-Ray
ถาม: ฉันสามารถสร้างแอปพลิเคชันแบบไร้เซิร์ฟเวอร์ที่เชื่อมต่อกับฐานข้อมูลแบบเชิงสัมพันธ์ได้หรือไม่
ใช่ คุณสามารถสร้างแอปพลิเคชันแบบไร้เซิร์ฟเวอร์ Lambda ที่ปรับขนาดได้และมีความปลอดภัยสูง ซึ่งเชื่อมต่อฐานข้อมูลแบบเชิงสัมพันธ์โดยใช้พร็อกซีของ Amazon RDS ซึ่งเป็นพร็อกซีฐานข้อมูลที่มีความพร้อมใช้งานสูงและจัดการการเชื่อมต่อพร้อมกันหลายพันรายการกับฐานข้อมูลแบบเชิงสัมพันธ์ ปัจจุบัน RDS Proxy ให้การสนับสนุนฐานข้อมูล MySQL และ Aurora คุณสามารถเริ่มใช้ RDS Proxy ได้ผ่านคอนโซล Amazon RDS หรือคอนโซล AWS Lambda ระบบจะเรียบเก็บเงินค่าแอปพลิเคชันแบบไร้เซิร์ฟเวอร์ที่ใช้กลุ่มการเชื่อมต่อที่มีการจัดการอย่างเต็มรูปแบบจาก RDS Proxy ตาม ค่าบริการ RDS Proxy
คำถาม: AWS SAM ได้รับสิทธิ์อย่างไร
ข้อกำหนดนี้เป็นแบบโอเพนซอร์สภายใต้ Apache 2.0 ซึ่งช่วยให้คุณและผู้อื่นสามารถปรับใช้และรวม AWS SAM ในเครื่องมือสำหรับบิลด์ การปรับใช้ การตรวจสอบ และการจัดการที่มีสิทธิ์ใช้งานเชิงพาณิชย์ คุณสามารถเข้าถึงพื้นที่เก็บข้อมูล AWS SAM บน GitHub ได้ที่นี่
การสนับสนุนภาพคอนเทนเนอร์
คำถาม: การรองรับอิมเมจคอนเทนเนอร์สำหรับ AWS Lambda คืออะไร
คำถาม: ฉันจะใช้การรองรับอิมเมจคอนเทนเนอร์สำหรับ AWS Lambda ได้อย่างไร
คำถาม: มีการรองรับอิมเมจคอนเทนเนอร์ประเภทใดบ้าง
คำถาม: รูปภาพพื้นฐานใดที่ฉันสามารถใช้ได้
คำถาม: เครื่องมือคอนเทนเนอร์ใดที่ฉันสามารถใช้รวมแพ็กเกจและติดตั้งใช้งานฟังก์ชันเป็นอิมเมจคอนเทนเนอร์
คำถาม: คุณสมบัติใดบ้างของ AWS Lambda มีพร้อมใช้งานสำหรับฟังก์ชันที่ติดตั้งใช้จริงเป็นอิมเมจคอนเทนเนอร์
คำถาม: AWS Lambda จะแพทช์และอัปเดตอิมเมจคอนเทนเนอร์ที่ติดตั้งใช้จริงของฉันหรือไม่
คำถาม: ฟังก์ชันที่สร้างโดยใช้การเก็บถาวร ZIP กับอิมเมจคอนเทนเนอร์ แตกต่างกันอย่างไร
ฟังก์ชันที่สร้างโดยใช้การเก็บถาวร ZIP เทียบกับอิมเมจคอนเทนเนอร์ แตกต่างกันสามประการหลักๆ คือ
- ฟังก์ชันที่สร้างโดยใช้การเก็บถาวร ZIP มีขนาดแพ็กเกจโค้ดสูงสุด 250 MB แบบแตกไฟล์ไว้ และฟังก์ชันที่สร้างโดยใช้อิมเมจคอนเทนเนอร์มีขนาดรูปภาพสูงสุด 10 GB
- Lambda ใช้ Amazon ECR เป็นพื้นที่เก็บโค้ดที่สำคัญสำหรับฟังก์ชันที่ได้รับการกำหนดให้เป็นอิมเมจคอนเทนเนอร์ ดังนั้นฟังก์ชันจึงไม่สามารถเรียกคืนได้เมื่อรูปภาพที่สำคัญถูกลบออกจาก ECR
- ฟังก์ชัน ZIP จะแพทช์โดยอัตโนมัติเพื่อความปลอดภัยของรันไทม์ล่าสุดและการแก้ไขจุดบกพร่อง ฟังก์ชันที่กำหนดให้เป็นอิมเมจคอนเทนเนอร์จะเปลี่ยนแปลงไม่ได้ และลูกค้าต้องรับผิดชอบต่อส่วนประกอบที่รวมเป็นแพ็กเกจในฟังก์ชันของตน ลูกค้าสามารถใช้ประโยชน์จากอิมเมจพื้นฐานที่ AWS ให้มา ซึ่ง AWS จะอัปเดตเป็นประจำเพื่อความปลอดภัยและการแก้ไขจุดบกพร่อง โดยใช้แพทช์ล่าสุดที่มี
คำถาม: มีความแตกต่างด้านประสิทธิภาพระหว่างฟังก์ชันที่กำหนดเป็น zip และอิมเมจคอนเทนเนอร์หรือไม่
คำถาม: ระบบจะเรียกเก็บเงินอย่างไรสำหรับการปรับใช้ฟังก์ชัน Lambda เป็นอิมเมจคอนเทนเนอร์
ไม่มีการเรียกเก็บเงินเพิ่มเติมสำหรับการรวมแพ็กเกจและติดตั้งใช้ฟังก์ชันเป็นอิมเมจคอนเทนเนอร์ใน AWS Lambda เมื่อคุณเรียกใช้ฟังก์ชันที่ติดตั้งใช้เป็นอิมเมจคอนเทนเนอร์ คุณเพียงชำระเงินในราคาปกติตามคำขอและระยะเวลาในการดำเนินการเท่านั้น หากต้องการเรียนรู้เพิ่มเติม โปรดไปที่ค่าบริการ AWS Lambda ระบบจะเรียกเก็บเงินสำหรับการจัดเก็บอิมเมจคอนเทนเนอร์ใน Amazon ECR ที่ราคามาตรฐานสำหรับ ECR หากต้องการเรียนรู้เพิ่มเติม โปรดไปที่ค่าบริการ Amazon ECR
คำถาม: Lambda Runtime Interface Emulator (RIE) คืออะไร
Lambda Runtime Interface Emulator เป็นพร็อกซีสำหรับ Runtime API ของ Lambda ซึ่งช่วยให้ลูกค้าสามารถทดสอบฟังก์ชัน Lambda ในพื้นที่ที่รวมแพ็กเกจเป็นภาพคอนเทนเนอร์ได้ RIE เป็นเว็บเซิร์ฟเวอร์ที่ใช้พื้นที่น้อยซึ่งจะแปลงคำขอ HTTP ไปเป็นเหตุการณ์ JSON และจำลอง Lambda Runtime API ช่วยให้คุณทดสอบฟังก์ชันภายในโดยใช้เครื่องมือที่คุ้นเคย เช่น cURL และ Docker CLI (เมื่อทดสอบฟังก์ชันที่รวมแพ็กเกจเป็นอิมเมจคอนเทนเนอร์) ทั้งยังช่วยให้การใช้งานแอปพลิเคชันของคุณเป็นเรื่องง่ายบนบริการประมวลผลเพิ่มเติม คุณสามารถรวม Lambda Runtime Interface Emulator ลงในอิมเมจคอนเทนเนอร์ของคุณเพื่อให้ยอมรับคำขอ HTTP ได้แบบเนทีฟแทนเหตุการณ์ JSON ที่จำเป็นสำหรับการปรับใช้กับ Lambda ส่วนประกอบนี้จะไม่จำลองตัวประสานการทำงานของ Lambda หรือการกำหนดค่าความปลอดภัยและการตรวจสอบสิทธิ์ Runtime Interface Emulator เป็นเครื่องมือแบบโอเพนซอร์สบน GitHub คุณสามารถเริ่มต้นใช้งานโดยดาวน์โหลดและติดตั้งลงภายในเครื่องของคุณ
คำถาม: ทำไมฉันจึงจำเป็นต้องใช้ Lambda Runtime Interface Emulator (RIE) ในระหว่างการทดสอบในพื้นที่
คำถาม: พฤติกรรมฟังก์ชันแบบใดที่ฉันสามารถทดสอบภายในได้ด้วยโปรแกรมจำลอง
คำถาม: Runtime Interface Emulator (RIE) ช่วยฉันเรียกใช้รูปภาพที่ใช้งานได้กับ Lambda บนบริการประมวลผลเพิ่มเติมอย่างไร
ลูกค้าสามารถเพิ่ม Runtime Interface Emulator เป็นจุดขาเข้าในอิมเมจคอนเทนเนอร์หรือรวมแพ็กเกจเป็นตัวพ่วงเพื่อให้แน่ใจว่าตอนนี้อิมเมจคอนเทนเนอร์ยอมรับคำขอ HTTP แทนเหตุการณ์ JSON การทำเช่นนี้ช่วยให้ทำการเปลี่ยนแปลงที่จำเป็นในการเรียกใช้อิมเมจคอนเทนเนอร์บนบริการประมวลผลเพิ่มเติมมีความง่ายยิ่งขึ้น ลูกค้าจะต้องรับผิดชอบในการตรวจสอบให้แน่ใจว่าตนปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดทั้งหมดด้านความปลอดภัย ประสิทธิภาพ และการทำงานพร้อมกันสำหรับสภาพแวดล้อมที่ตนเลือก RIE เป็นเครื่องมือสำเร็จรูปอยู่ในรูปภาพที่ AWS Lambda มีให้ และพร้อมใช้งานตามค่าเริ่มต้นใน AWS SAM CLI ผู้ให้บริการอิมเมจพื้นฐานสามารถใช้เอกสารประกอบเพื่อมอบประสบการณ์เดียวกันสำหรับอิมเมจพื้นฐานของตนเองได้
คำถาม: ฉันจะติดตั้งใช้แอปพลิเคชันที่มีคอนเทนเนอร์ที่มีอยู่ของฉันลงใน AWS Lambda อย่างไร
คุณสามารถติดตั้งใช้แอปพลิเคชันที่มีคอนเทนเนอร์ลงใน AWS Lambda เมื่อเป็นไปตามข้อกำหนดด้านล่างนี้:
- อิมเมจคอนเทนเนอร์ต้องใช้งาน Lambda Runtime API เรามีชุดแพ็กเกจซอฟต์แวร์แบบโอเพนซอร์สอย่าง Runtime Interface Clients (RIC) ที่ใช้งาน Lambda Runtime API ช่วยให้คุณขยายรูปภาพพื้นฐานที่ต้องการให้สามารถใช้งานได้กับ Lambda อย่างราบรื่น
- อิมเมจคอนเทนเนอร์จะต้องสามารถทำงานได้บนระบบไฟล์แบบอ่านอย่างเดียว โค้ดฟังก์ชันของคุณสามารถเข้าถึงพื้นที่เก็บข้อมูลของไดเรกทอรี/tmp แบบเขียนได้ขนาด 512 MB หากคุณใช้อิมเมจที่จะต้องมีไดเรกทอรีรากแบบเขียนได้ ให้กำหนดค่าอิมเมจเพื่อเขียนลงในไดเรกทอรี /tmp
- ผู้ใช้ Lambda เริ่มต้นสามารถอ่านไฟล์ที่จำเป็นสำหรับการดำเนินการของโค้ดฟังก์ชันได้ Lambda กำหนดผู้ใช้ Linux เริ่มต้นให้มีสิทธิ์ที่มีความพิเศษน้อยที่สุดที่สอดคล้องตามแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย คุณจำเป็นต้องตรวจสอบยืนยันว่าโค้ดแอปพลิเคชันของคุณไม่ได้ขึ้นอยู่กับไฟล์ที่ถูกจำกัดโดยผู้ใช้ Linux รายอื่นสำหรับใช้ดำเนินการ
- เป็นอิมเมจคอนเทนเนอร์บน Linux
AWS Lambda SnapStart
ถาม: AWS Lambda SnapStart คืออะไร
AWS SnapStart สามารถปรับปรุงประสิทธิภาพในการเริ่มใช้งานจากหลายวินาทีเป็นต่ำที่สุดจนเท่ากับวินาทีย่อยสำหรับแอปพลิเคชันที่อ่อนไหวต่อเวลาแฝง SnapStart ทำงานโดยการสแนปชอตสถานะหน่วยความจำ (และดิสก์) ที่เริ่มต้นของฟังก์ชันของคุณ และแคชสแนปช็อตนี้เพื่อเข้าถึงเวลาแฝงต่ำ เมื่อเรียกดำเนินการฟังก์ชันของคุณในภายหลัง Lambda จะดำเนินการต่อในสภาพแวดล้อมการดำเนินการจากสแนปช็อตที่เริ่มต้นล่วงหน้านี้แทนที่จะเริ่มต้นสแนปช็อตดังกล่าวตั้งแต่แรก ซึ่งจะช่วยลดเวลาแฝงในการเริ่มใช้งานได้ เพื่อความยืดหยุ่น Lambda จะเก็บสำเนาแคชของสแนปช็อตของคุณและนำไปใช้กับการอัปเดตซอฟต์แวร์โดยอัตโนมัติ เช่น การอัปเกรดรันไทม์และแพตช์ความปลอดภัยไปยังสแนปช็อตดังกล่าว
ถาม: ฉันจะตั้งค่าฟังก์ชัน Lambda ของฉันเพื่อใช้งาน Lambda SnapStart ได้อย่างไร
Lambda SnapStart คือการกำหนดค่าระดับฟังก์ชันอย่างง่ายที่สามารถกำหนดค่าสำหรับฟังก์ชันทั้งอันใหม่และอันที่มีอยู่ด้วยการใช้งาน Lambda API, คอนโซลการจัดการของ AWS, อินเทอร์เฟซบรรทัดคำสั่ง (CLI) ของ AWS, AWS SDK, AWS Cloud Development Kit (CDK), AWS CloudFormation และโมเดลแอปพลิเคชันแบบไม่ต้องใช้เซิร์ฟเวอร์ (SAM) ของ AWS เมื่อคุณตั้งค่า Lambda SnapStart ทุกเวอร์ชันของฟังก์ชันที่เผยแพร่หลังจากนั้นจะได้รับประโยชน์จากการปรับปรุงประสิทธิภาพในการเริ่มต้นที่ให้โดย Lambda SnapStart เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ Lambda SnapStart โปรดดูที่ เอกสารประกอบ
ถาม: ฉันจะเลือกระหว่าง Lambda SnapStart และ กระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งานได้อย่างไร
Lambda SnapStart คือการเพิ่มประสิทธิภาพที่ช่วยให้ฟังก์ชันของคุณใช้เวลาเริ่มต้นเร็วขึ้น โดยใช้การลดเวลาแฝงของตัวแปรที่เกิดขึ้นระหว่างการดำเนินการทดสอบรหัสการเริ่มต้นแบบครั้งเดียว ในระหว่างที่ Lambda SnapStart ลดเวลาแฝงในการเริ่มใช้งานลง แต่การทำงานนี้เป็นการเพิ่มประสิทธิภาพที่ดีที่สุดและไม่รับประกันว่าจะหยุดการทำงานของการเริ่มต้นแบบไม่เชื่อมต่อกับอินเทอร์เน็ต หากแอปพลิเคชันมีข้อกำหนดด้านเวลาแฝงที่เข้มงวดและต้องการเวลาเริ่มต้นด้วยตัวเลขสองหลักในระดับมิลลิวินาที เราขอแนะนำให้คุณใช้ PC
ถาม: รันไทม์แบบใดที่ Lambda SnapStart รองรับ
Lambda SnapStart รองรับรันไทม์หลายรายการ รวมถึง Java 11 (และใหม่กว่า), Python 3.12 (และใหม่กว่า) และ .NET 8 (และใหม่กว่า) เวอร์ชันในอนาคตของรันไทม์จะได้รับการรองรับหลังจากมีการเปิดตัว สำหรับรันไทม์ที่ Lambda รองรับทั้งหมดดูได้ที่ เอกสารประกอบรันไทม์ Lambda
ถาม: ฉันสามารถใช้งานทั้ง Lambda SnapStart และ PC ในฟังก์ชันเดียวกันได้หรือไม่
ถาม: ฉันสามารถปรับแต่งฟังก์ชัน Lambda SnapStart ด้วย Virtual Private Cloud (VPC) ได้หรือไม่
ใช่ คุณสามารถปรับแต่งฟังก์ชันของ Lambda SnapStart เพื่อเข้าถึงทรัพยากรใน Virtual Private Cloud (VPC) ได้ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการตั้งค่าฟังก์ชันด้วย VPC ดูได้ที่ เอกสารประกอบ Lambda
ถาม: ฉันสามารถปรับแต่ง Lambda SnapStart ทั้งบนสถาปัตยกรรม x86 และ Arm ได้หรือไม่
ใช่ คุณสามารถกำหนดค่า Lambda SnapStart สำหรับฟังก์ชันที่เรียกใช้บนสถาปัตยกรรมทั้ง x86 และ Arm ได้
ถาม: ฉันสามารถใช้ Lambda SnapStart ด้วย Amazon Elastic File System (EFS) ได้หรือไม่
ถาม: ฉันสามารถใช้งาน Lambda SnapStart ด้วยพื้นที่จัดเก็บชั่วคราวที่ใหญ่กว่า (/tmp) 512 MB ได้หรือไม่
ถาม: กระบวนการแคชและการดำเนินการต่อจากสแนปช็อตจะแนะนำการพิจารณาความเข้ากันได้ของซอฟต์แวร์ด้วยหรือไม่
ใช่ หากโค้ดของคุณถือว่าสถานะไม่ซ้ำกัน คุณจำต้องประเมินความยืดหยุ่นของโค้ดของคุณเพื่อดำเนินการสแนปช็อต (เช่น การโคลนและการดำเนินการต่อ) เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการพิจารณาความเป็นเอกลักษณ์ด้วย Lambda SnapStart ดูที่ เอกสารประกอบและบล็อกเกี่ยวกับการทำความเข้าใจเอกลักษณ์ใน VM สแนปช็อตด้วย Lambda SnapStart
ถาม: ฉันสามารถรันโค้ดของตัวเองก่อนที่จะสร้างสแนปช็อตหรือเมื่อฟังก์ชันกลับมาทำงานต่อจากสแนปช็อตได้หรือไม่
ใช่ คุณสามารถใช้ซอฟต์แวร์ตรรกะก่อนการสร้าง (ตรวจสอบจุดตรวจสอบ) สแนปช็อตและหลังจากกู้คืนสแนปช็อตด้วยการใช้ฮุครันไทม์ เพื่อเรียนรู้เพิ่มเติม ดูที่เอกสารประกอบ Lambda SnapStart
ถาม: ฉันจะถูกคิดค่าใช้จ่ายสำหรับ Lambda SnapStart หรือไม่
ใช่ ระบบจะเรียกเก็บเงินคุณสำหรับการแคชสแนปช็อตในช่วงเวลาที่เวอร์ชันฟังก์ชันของคุณใช้งานอยู่ ซึ่งเป็นเวลาอย่างน้อย 3 ชั่วโมงและต่อมิลลิวินาทีหลังจากนั้น ราคาจะขึ้นอยู่กับจำนวนหน่วยความจำที่คุณใช้กับฟังก์ชันของคุณ นอกจากนี้ ระบบจะเรียกเก็บเงินคุณทุกครั้งที่ Lambda กลับมาดำเนินการในสภาพแวดล้อมการดำเนินการโดยการกู้คืนสแนปช็อตของคุณด้วยเช่นกัน โดยราคาขึ้นอยู่กับจำนวนหน่วยความจำที่คุณจัดสรรให้กับฟังก์ชันของคุณ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการกำหนดราคา SnapStart โปรดไปที่การกำหนดราคา AWS Lambda
การกำหนดราคา SnapStart จะไม่นำไปใช้กับรันไทม์ที่ได้รับการจัดการโดย Java ที่รองรับ ซึ่งสามารถแคชสแนปชอตได้นานถึง 14 วันเท่านั้น
ถาม: ค่าบริการระยะเวลาสำหรับ SnapStart คำนวณอย่างไร
เช่นเดียวกับฟังก์ชัน Lambda ทั้งหมด จะมีการนำค่าบริการระยะเวลาไปใช้กับฟังก์ชัน SnapStart ด้วยเช่นกัน สำหรับฟังก์ชันที่ใช้ SnapStart ระยะเวลาจะรวมถึงเวลาที่ใช้ในการโหลดรันไทม์ รหัสใด ๆ ที่ทำงานในรันไทม์ของ Hook และรหัสการเตรียมใช้งานที่ดำเนินการเมื่อสร้างสำเนาสแนปช็อตเพื่อความยืดหยุ่น
ถาม: การสแนปช็อตสำหรับเวอร์ชันฟังก์ชันที่เผยแพร่แล้วจะถูกแคชด้วย Lambda SnapStart นานเท่าไร
Lambda SnapStart สำหรับ Python และ .NET ทำให้สแนปช็อตฟังก์ชันของคุณจะยังคงใช้งานอยู่ต่อไปตราบใดที่ฟังก์ชันของคุณยังคงทำงาน สำหรับฟังก์ชัน Java สแนปช็อตที่เชื่อมโยงกับฟังก์ชันที่เผยแพร่จะหมดอายุหากไม่มีการใช้งานนานกว่า 14 วัน
ถาม: ฉันจะสามารถเข้ารหัสสแนปช็อตของสภาพแวดล้อมการดำเนินการเริ่มต้นที่สร้างโดย Lambda SnapStart ได้อย่างไร
สแนปช็อตจะถูกเข้ารหัสเป็นค่าเริ่มต้นด้วย AWS Key Management Service (KMS) เฉพาะของลูกค้าที่เป็นเจ้าของและจัดการโดยบริการ Lambda ลูกค้ายังสามารถเข้ารหัสสแนปช็อตด้วยการใช้ คีย์ KMS ที่เป็นเจ้าของและจัดการโดยลูกค้า
ถาม: มีเวลาจำกัดสำหรับการเริ่มต้นโค้ดของฉันด้วย Lambda SnapStart หรือไม่
กระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน
คำถาม: กระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งานของ AWS Lambda คืออะไร
คำถาม: ฉันจะตั้งค่าและจัดการกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งานได้อย่างไร
คุณสามารถกำหนดค่ากระบวนการทำงานพร้อมกันในฟังก์ชันของคุณได้ผ่าน AWS Management Console, Lambda API, AWS CLI และ AWS CloudFormation วิธีที่ง่ายที่สุดที่จะได้รับประโยชน์จากกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งานนั้นคือการใช้งาน AWS Auto Scaling คุณสามารถใช้ Auto Scaling ของแอปพลิเคชันเพื่อกำหนดค่าตารางเวลา หรือให้ Auto Scaling ปรับระดับกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งานโดยอัตโนมัติแบบเรียลไทม์เมื่อความต้องการเปลี่ยนแปลง หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน โปรดดูที่เอกสารประกอบ
คำถาม: หากฉันต้องการใช้กระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน ฉันต้องเปลี่ยนโค้ดของฉันหรือไม่
คำถาม: ระบบจะเรียกเก็บเงินสำหรับกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งานอย่างไร
กระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งานจะเพิ่มขอบเขตราคาของ ‘กระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน’ เพื่อให้ฟังก์ชันเริ่มต้นทำงานต่อไป เมื่อเปิดใช้งานแล้ว คุณจะชำระเงินตามจำนวนกระบวนการทำงานพร้อมกันที่คุณกำหนดค่าและตามรอบระยะเวลาที่คุณกำหนดค่า เมื่อฟังก์ชันของคุณได้ดำเนินการในขณะที่มีการกำหนดค่ากระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน คุณยังต้องชำระเงินตามคำขอและระยะเวลาดำเนินการ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับราคาของกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน โปรดดูที่ ค่าบริการ AWS Lambda
คำถาม: เมื่อใดที่ฉันควรใช้กระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน
คำถาม: จะเกิดอะไรขึ้นหากฟังก์ชันได้รับการเรียกดำเนินการเกินระดับที่กำหนดให้กับกระบวนการทำงานพร้อมกันที่มีการเตรียมใช้งาน
ฟังก์ชัน AWS Lambda ที่ขับเคลื่อนด้วยตัวประมวลผล Graviton2
คำถาม: ฟังก์ชัน AWS Lambda ที่ขับเคลื่อนด้วยตัวประมวลผล Graviton2 คืออะไร
คำถาม: เหตุใดฉันจึงควรใช้ AWS Lambda ที่ขับเคลื่อนด้วยตัวประมวลผล Graviton2
คำถาม: ฉันจะกำหนดค่าฟังก์ชันให้ทำงานบนตัวประมวลผล Graviton2 ได้อย่างไร
คำถาม: ฉันจะปรับใช้แอปพลิเคชันที่สร้างโดยใช้ฟังก์ชันที่ขับเคลื่อนด้วยตัวประมวลผล Graviton2 ได้อย่างไร
คำถาม: แอปพลิเคชันสามารถใช้ทั้งสองฟังก์ชันที่ขับเคลื่อนด้วยตัวประมวลผล Graviton2 และตัวประมวลผล x86 ได้หรือไม่
คำถาม: ฉันจำเป็นต้องใช้เครื่องพัฒนาแบบ Arm เพื่อประดิษฐ์ สร้าง และทดสอบฟังก์ชันที่ขับเคลื่อนด้วยตัวประมวลผล Graviton2 ในเครื่องหรือไม่
ภาษาที่ตีความแล้ว เช่น Python, Java และ Node โดยทั่วไปไม่ต้องดำเนินการคอมไพล์ซ้ำ เว้นแต่โค้ดของคุณจะอ้างอิงถึงไลบรารีที่ใช้ส่วนประกอบเฉพาะของสถาปัตยกรรม ในกรณีดังกล่าว คุณจะต้องจัดเตรียมไลบรารีที่กำหนดเป้าหมายไปยัง arm64 สำหรับรายละเอียดเพิ่มเติม โปรดดูหน้าการเริ่มต้นใช้งาน AWS Graviton ภาษาที่ไม่ได้ตีความแล้วจะต้องคอมไพล์โค้ดของคุณเพื่อกำหนดเป้าหมาย arm64 แม้ว่าคอมไพเลอร์ที่ทันสมัยกว่าจะสร้างโค้ดที่คอมไพล์แล้วสำหรับ arm64 แต่คุณจะต้องปรับใช้โค้ดดังกล่าวในสภาพแวดล้อมแบบ Arm เพื่อทดสอบ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการใช้ฟังก์ชัน Lambda ด้วย Graviton2 โปรดดูเอกสารประกอบ
คำถาม: AWS Lambda รองรับอิมเมจคอนเทนเนอร์แบบหลายสถาปัตยกรรมหรือไม่
คำถาม: ฉันสามารถสร้าง AWS Lambda Layers ที่กำหนดเป้าหมายฟังก์ชันที่ขับเคลื่อนด้วยหน่วยประมวลผล AWS Graviton2 ได้หรือไม่
ถาม: ฟังก์ชัน Lambda ที่ทำงานบนตัวประมวลผล Graviton2 รองรับภาษาและรันไทม์ใดบ้าง
เมื่อเปิดตัว ลูกค้าสามารถใช้อิมเมจ Python, Node.js, Java, Ruby, .Net Core, Custom Runtime (provided.al2) และ OCI Base ได้ หากต้องการเรียนรู้เพิ่มเติม โปรดดูที่ AWS Lambda Runtimes
คำถาม: ราคาของฟังก์ชัน AWS Lambda ที่ขับเคลื่อนด้วยตัวประมวลผล AWS Graviton2 เป็นอย่างไร Free Tier ของ AWS Lambda ใช้กับฟังก์ชันที่ขับเคลื่อนด้วย Graviton2 ได้หรือไม่
คำถาม: ฉันจะเลือกระหว่างการเรียกใช้ฟังก์ชันบนตัวประมวลผล Graviton2 หรือตัวประมวลผล x86 ได้อย่างไร
แต่ละปริมาณงานมีความแตกต่างกัน และเราขอแนะนำให้ลูกค้าทดสอบฟังก์ชันของตนเพื่อระบุการปรับปรุงประสิทธิภาพด้านราคาที่พวกเขาอาจได้รับ หากต้องการดำเนินการเช่นนั้น เราขอแนะนำให้ใช้เครื่องมือ AWS Lambda Power Tuning เราขอแนะนำให้เริ่มต้นด้วยการประมวลผลแบ็คเอนด์ของเว็บและมือถือ ข้อมูล และสตรีมเมื่อทดสอบปริมาณงานของคุณเพื่อปรับปรุงประสิทธิภาพด้านราคาที่อาจเกิดขึ้น
Amazon EFS สำหรับ AWS Lambda
คำถาม: Amazon EFS สำหรับ AWS Lambda คืออะไร
คำถาม: ฉันจะตั้งค่า Amazon EFS สำหรับ Lambda ได้อย่างไร
นักพัฒนาสามารถเชื่อมต่อระบบไฟล์ EFS ที่มีอยู่เข้ากับฟังก์ชัน Lambda ได้ง่าย ๆ ผ่านทาง EFS Access Point โดยใช้ Console, CLI หรือ SDK เมื่อเรียกใช้งานฟังก์ชันครั้งแรก ระบบไฟล์จะติดตั้งโดยอัตโนมัติและพร้อมใช้งานกับโค้ดฟังก์ชัน คุณสามารถเรียนรู้เพิ่มเติมได้ในเอกสารประกอบ
คำถาม: ฉันจำเป็นต้องกำหนดค่าฟังก์ชันของฉันด้วยการตั้งค่า VPC ก่อนที่จะสามารถใช้ระบบไฟล์ Amazon EFS ของฉันหรือไม่
คำถาม: ใครควรใช้ Amazon EFS สำหรับ Lambda
คำถาม: ข้อมูลของฉันจะถูกเข้ารหัสในระหว่างการส่งหรือไม่
คำถาม: ข้อมูลของฉันถูกเข้ารหัสระหว่างการพักเก็บหรือไม่
คำถาม: ฉันจะถูกเรียกเก็บค่าบริการสำหรับการใช้งาน Amazon EFS สำหรับ AWS Lambda อย่างไร
ไม่มีค่าบริการเพิ่มเติมในการใช้งาน Amazon EFS สำหรับ AWS Lambda ลูกค้าชำระค่าบริการตามราคามาตรฐานสำหรับ AWS Lambda และสำหรับ Amazon EFS เมื่อใช้ Lambda และ EFS ใน Availability Zone เดียวกัน ลูกค้าจะไม่ถูกเรียกเก็บค่าบริการสำหรับการถ่ายโอนข้อมูล อย่างไรก็ตาม หากลูกค้าใช้ VPC Peering เพื่อการเข้าถึงข้ามบัญชี ลูกค้าจะถูกเรียกเก็บค่าบริการการถ่ายโอนข้อมูล เพื่อเรียนรู้เพิ่มเติม โปรดดูที่ค่าบริการ
คำถาม:ฉันสามารถเชื่อมโยงระบบไฟล์ Amazon EFS มากกว่าหนึ่งระบบเข้ากับฟังก์ชัน AWS Lambda ของฉันได้หรือไม่
คำถาม: ฉันสามารถใช้ระบบไฟล์ Amazon EFS เดียวกันในหลายๆ ฟังก์ชัน คอนเทนเนอร์ และอินสแตนซ์ได้หรือไม่
URL ของฟังก์ชัน Lambda
ถาม: ฟังก์ชัน AWS Lambda รองรับตำแหน่งข้อมูล HTTP หรือไม่
ถาม: ฉันจะกำหนดค่า URL ของฟังก์ชัน Lambda สำหรับฟังก์ชันของฉันได้อย่างไร
คุณสามารถกำหนดค่า URL ของฟังก์ชันสำหรับฟังก์ชันของคุณได้ผ่าน AWS Management Console, AWS Lambda API, AWS CLI, AWS CloudFormation และ AWS Serverless Application Model โดยสามารถเปิดใช้ URL ของฟังก์ชันเป็นเวอร์ชัน $LATEST ที่ไม่มีเงื่อนไขของฟังก์ชันคุณ หรือในนามแฝงของฟังก์ชันใดๆ ก็ได้ ดูเอกสารประกอบเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการกำหนดค่า URL ของฟังก์ชัน
ถาม: ฉันจะเก็บรักษา URL ของฟังก์ชัน Lambda ให้ปลอดภัยได้อย่างไรบ้าง
ถาม: ฉันจะเรียกใช้ฟังก์ชันด้วย URL ของฟังก์ชัน Lambda ได้อย่างไร
ถาม: URL ของฟังก์ชัน Lambda ทำงานร่วมกับเวอร์ชันและนามแฝงของฟังก์ชันได้หรือไม่
ใช่ คุณสามารถเปิดใช้ URL ของฟังก์ชัน Lambda เป็นฟังก์ชันหรือนามแฝงฟังก์ชันได้ หากไม่มีการระบุนามแฝง URL จะนำไปที่ $LATEST โดยค่าเริ่มต้น URL ของฟังก์ชันไม่สามารถกำหนดเป้าหมายเวอร์ชันของฟังก์ชันเฉพาะรายการได้
ถาม: ฉันสามารถเปิดใช้โดเมนแบบกำหนดเองสำหรับ URL ของฟังก์ชัน Lambda ของฉันได้หรือไม่
ถาม: สามารถใช้ URL ของฟังก์ชัน Lambda เพื่อเรียกใช้ฟังก์ชันใน VPC ได้หรือไม่
ถาม: การใช้งาน URL ของฟังก์ชัน Lambda มีค่าบริการเท่าใด
ไม่มีค่าบริการเพิ่มเติมในการใช้งาน URL ของฟังก์ชัน คุณเพียงชำระเงินในราคามาตรฐานสำหรับการใช้ AWS Lambda ก็พอ หากต้องการเรียนรู้เพิ่มเติม โปรดดูค่าบริการ AWS Lambda
Lambda@Edge
คำถาม: Lambda@Edge คืออะไร
Lambda@Edge ช่วยให้คุณเรียกใช้โค้ดในตำแหน่งที่ตั้งของ AWS ทั่วโลกได้โดยไม่ต้องจัดเตรียมหรือจัดการเซิร์ฟเวอร์ เพื่อตอบสนองต่อผู้ใช้ตำแหน่งข้อมูลด้วยเวลาแฝงของเครือข่ายที่ต่ำที่สุด เพียงคุณอัปโหลดโค้ด Node.js หรือ Python ไปยัง AWS Lambda และกำหนดค่าฟังก์ชันของคุณให้สามารถเรียกใช้เพื่อตอบสนองต่อคำขอ Amazon CloudFront (เช่น เมื่อได้รับคำขอจากผู้ชม เมื่อส่งต่อหรือรับคำขอกลับมาจากต้นทาง และก่อนที่จะตอบสนองกลับไปยังผู้ใช้ตำแหน่งข้อมูล) จากนั้นโค้ดจะพร้อมดำเนินการในตำแหน่งที่ตั้งต่างๆ ของ AWS ทั่วโลกเมื่อได้รับคำขอเนื้อหา และจะปรับตามปริมาณคำขอ CloudFront ทั่วโลก เรียนรู้เพิ่มเติมได้ในเอกสารประกอบของเรา
คำถาม: ฉันจะใช้ Lambda@Edge ได้อย่างไร
เมื่อต้องการใช้ Lambda@Edge คุณเพียงอัปโหลดโค้ดของคุณไปที่ AWS Lambda และเชื่อมโยงเวอร์ชันฟังก์ชันที่จะเรียกใช้เพื่อตอบสนองคำขอ Amazon CloudFront โค้ดของคุณต้องเป็นไปตาม Service Limits ของ Lambda@Edge Lambda@Edge รองรับ Node.js และ Python สำหรับคำขอร้องทั่วโลกโดยเหตุการณ์ CloudFront ในขณะนี้ เรียนรู้เพิ่มเติมได้ในเอกสารประกอบของเรา
คำถาม: ฉันควรใช้ Lambda@Edge เมื่อใด
Lambda@Edge เหมาะสำหรับกรณีใช้งานที่ไวต่อเวลาแฝง ที่ซึ่งผู้ชมตำแหน่งข้อมูลของคุณกระจายตำแหน่งที่ตั้งไปทั่วโลก ข้อมูลทั้งหมดที่คุณต้องใช้ในการตัดสินใจมีอยู่ใน CloudFront ที่ Edge ภายในฟังก์ชันและคำขอ นั่นหมายความว่า ตอนนี้กรณีใช้งานที่คุณต้องตัดสินใจวิธีการให้บริการเนื้อหาตามลักษณะของผู้ใช้ (เช่น ตำแหน่งที่ตั้ง อุปกรณ์ไคลเอ็นต์ เป็นต้น) จะสามารถดำเนินการและให้บริการใกล้กับผู้ใช้ของคุณได้โดยไม่ต้องส่งกลับไปที่เซิร์ฟเวอร์ส่วนกลาง
คำถาม: ฉันสามารถปรับใช้ฟังก์ชัน Lambda ที่มีอยู่สำหรับคำขอร้องทั่วโลกได้หรือไม่
คุณสามารถเชื่อมโยงฟังก์ชัน Lambda ที่มีอยู่กับเหตุการณ์ CloudFront สำหรับคำขอร้องทั่วโลกหากฟังก์ชันตอบสนองข้อกำหนดและข้อจำกัดด้านบริการ Lambda@Edge อ่านเพิ่มเติมเกี่ยวกับการอัปเดตคุณสมบัติการทำงานของคุณได้ที่นี่
คำถาม: เหตุการณ์ Amazon CloudFront ใดบ้างที่สามารถเรียกใช้ฟังก์ชันของฉันได้
ฟังก์ชันของคุณจะเรียกใช้งานโดยอัตโนมัติเพื่อตอบสนองเหตุการณ์ของ Amazon CloudFront ต่อไปนี้
- คำขอจากผู้ชม - เหตุการณ์นี้จะเกิดขึ้นเมื่อผู้ใช้ตำแหน่งข้อมูลหรืออุปกรณ์บนอินเทอร์เน็ตส่งคำขอ HTTP(S) ไปยัง CloudFront และคำขอดังกล่าวไปถึง Edge Location ที่อยู่ใกล้ผู้ใช้รายนั้นมากที่สุด
- การตอบสนองจากผู้ชม - เหตุการณ์นี้จะเกิดขึ้นเมื่อเซิร์ฟเวอร์ CloudFront ที่ Edge พร้อมที่จะตอบสนองต่อผู้ใช้ตำแหน่งข้อมูลหรืออุปกรณ์ที่ส่งคำขอ
- คำขอจากต้นทาง - เหตุการณ์นี้จะเกิดขึ้นเมื่อเซิร์ฟเวอร์ CloudFront ที่ Edge ไม่มีอ็อบเจกต์ที่ขออยู่ในแคช และคำขอจากผู้ชมก็พร้อมที่จะส่งไปยังเว็บเซิร์ฟเวอร์แบ็คเอนด์ต้นทางของคุณ (เช่น Amazon EC2 หรือ Application Load Balancer หรือ Amazon S3)
- การตอบสนองจากต้นทาง - เหตุการณ์นี้จะเกิดขึ้นเมื่อเซิร์ฟเวอร์ CloudFront ที่ Edge ได้รับการตอบสนองจากเว็บเซิร์ฟเวอร์แบ็คเอนด์ต้นทางของคุณ
คำถาม: AWS Lambda@Edge แตกต่างจากการใช้ AWS Lambda เบื้องหลัง Amazon API Gateway อย่างไร
ความแตกต่างคือ API Gateway และ Lambda เป็นบริการระดับภูมิภาค การใช้ Lambda@Edge และ Amazon CloudFront ช่วยให้คุณสามารถประมวลผลลอจิกได้ใน AWS หลายตำแหน่งตามจุดที่ผู้ชมตำแหน่งข้อมูลของคุณอยู่
ความสามารถในการปรับขนาดและความพร้อมใช้งาน
คำถาม: ฟังก์ชัน AWS Lambda พร้อมใช้งานอย่างไร
คำถาม: ฟังก์ชัน AWS Lambda ยังสามารถใช้ได้เมื่อฉันเปลี่ยนโค้ดหรือการกำหนดค่าหรือไม่
คำถาม: มีขีดจำกัดของจำนวนฟังก์ชัน AWS Lambda ที่ฉันสามารถใช้งานได้พร้อมกันหรือไม่
ไม่ AWS Lambda ได้รับการออกแบบมาเพื่อเรียกใช้อินสแตนซ์ฟังก์ชันของคุณหลายรายการพร้อมกัน อย่างไรก็ตาม AWS Lambda มีขีดจำกัดความปลอดภัยเริ่มต้นสำหรับจำนวนการดำเนินการที่เกิดขึ้นพร้อมกันต่อบัญชีต่อ Region (โปรดดูข้อมูลเกี่ยวกับขีดจำกัดความปลอดภัยเริ่มต้นที่นี่) นอกจากนี้ คุณยังสามารถควบคุมการดำเนินการที่เกิดขึ้นพร้อมกันสูงสุดสำหรับฟังก์ชัน AWS Lambda แต่ละรายการได้ ซึ่งคุณสามารถใช้เพื่อสำรองชุดย่อยของขีดจำกัดในกระบวนการทำงานพร้อมกันของบัญชีสำหรับฟังก์ชันที่สำคัญ หรือกำหนดอัตราการรับส่งข้อมูลให้กับทรัพยากรดาวน์สตรีม
หากคุณต้องการส่งคําขอเพื่อเพิ่มขีดจํากัดการดําเนินการพร้อมกันคุณสามารถใช้โควตาบริการเพื่อขอเพิ่มขีดจํากัด
คำถาม: จะเกิดอะไรขึ้นหากบัญชีของฉันเกินขีดจำกัดเริ่มต้นสำหรับการดำเนินการที่เกิดขึ้นพร้อมกัน
เมื่อเกินขีดจำกัดการดำเนินการพร้อมกันสูงสุด ฟังก์ชัน AWS Lambda ที่ถูกเรียกดำเนินการแบบซิงโครนัสจะส่งคืนข้อผิดพลาดเกี่ยวกับการควบคุมปริมาณ (รหัสข้อผิดพลาด 429) ฟังก์ชัน Lambda ที่ถูกเรียกใช้แบบอะซิงโครนัสสามารถดูดซับการรับส่งข้อมูลที่เหมาะสมได้ประมาณ 15-30 นาทีหลังจากที่เหตุการณ์ขาเข้าจะถูกปฏิเสธเนื่องจากมีการควบคุม ในกรณีที่ฟังก์ชัน Lambda ถูกเรียกใช้เพื่อตอบสนองต่อเหตุการณ์ Amazon S3 กิจกรรมที่ AWS Lambda ปฏิเสธอาจถูกเก็บรักษาและเรียกซ้ำโดย S3 เป็นเวลา 24 ชั่วโมง เหตุการณ์จาก Amazon Kinesis Streams และ Amazon DynamoDB Streams จะถูกเรียกซ้ำจนกว่าฟังก์ชัน Lambda จะสำเร็จหรือข้อมูลหมดอายุ Amazon Kinesis Streams และ Amazon DynamoDB Streams จะเก็บข้อมูลเป็นเวลา 24 ชั่วโมง
คำถาม: ขีดจำกัดการดำเนินการพร้อมกันสูงสุดเริ่มต้นมีการใช้ในระดับต่อฟังก์ชันหรือไม่
ขีดจํากัดการดําเนินการพร้อมกันสูงสุดเริ่มต้นมีการใช้ที่ระดับบัญชี อย่างไรก็ตาม คุณยังสามารถกําหนดขีดจํากัดสำหรับแต่ละฟังก์ชันได้เช่นกัน (เยี่ยมชมที่นี่เพื่อดูข้อมูลเกี่ยวกับ Reserved Concurrency)
ถาม: ฟังก์ชัน AWS Lambda ของฉันปรับขนาดได้เร็วเพียงใด
ฟังก์ชัน Lambda ที่เรียกดำเนินการพร้อมกันแต่ละฟังก์ชันสามารถปรับขนาดได้ในอัตราการดําเนินการพร้อมกันสูงสุด 1,000 รายการทุกๆ 10 วินาที แม้ว่าอัตราการปรับขนาดของ Lambda จะเหมาะสําหรับกรณีการใช้งานส่วนใหญ่ แต่จะเหมาะอย่างยิ่งสําหรับผู้ที่มีปริมาณการใช้งานที่คาดการณ์ได้หรือคาดเดาไม่ได้ ตัวอย่างเช่น การประมวลผลข้อมูลที่ผูกกับ SLA จะต้องมีการปรับขนาดที่คาดการณ์ได้แต่รวดเร็วเพื่อตอบสนองความต้องการในการประมวลผล ในทํานองเดียวกัน การให้บริการบทความข่าวด่วน หรือการแฟลชเซลอาจเพิ่มระดับการเข้าชมที่คาดเดาไม่ได้ในช่วงเวลาสั้นๆ อัตราการปรับขนาดของ Lambda สามารถอํานวยความสะดวกให้กับกรณีการใช้งานดังกล่าวได้โดยไม่ต้องกําหนดค่าหรือเครื่องมือเพิ่มเติม นอกจากนี้ ขีดจํากัดการปรับขนาดพร้อมกันยังเป็นขีดจํากัดระดับฟังก์ชัน ซึ่งหมายความว่าแต่ละฟังก์ชันในบัญชีของคุณจะปรับขนาดโดยไม่ขึ้นกับฟังก์ชันอื่นๆ
คำถาม: จะเกิดอะไรขึ้นหากฟังก์ชัน Lambda ของฉันผิดพลาดขณะประมวลผลเหตุการณ์
คำถาม: ฉันสามารถกำหนดค่าทรัพยากรอะไรเป็นคิวที่ทำไม่สำเร็จสำหรับฟังก์ชัน Lambda ได้บ้าง
คำถาม: จะเกิดอะไรขึ้นหากการเรียกใช้ฟังก์ชัน Lambda ของฉันทำให้นโยบายที่มีอยู่หมดไป
เมื่อเกินนโยบายการลองใหม่สำหรับการเรียกแบบอะซิงโครนัส คุณสามารถกำหนดค่า "คิวที่ทำไม่สำเร็จ" (DLQ) ที่จะวางเหตุการณ์ ในกรณีที่ไม่มี DLQ ที่กำหนดเหตุการณ์อาจถูกปฏิเสธ เมื่อเกินนโยบายการลองใหม่สำหรับการเรียกดำเนินการตามสตรีม ข้อมูลจะหมดอายุและถูกปฏิเสธในที่สุด
การควบคุมความปลอดภัยและการเข้าถึง
คำถาม: ฉันจะอนุญาตให้ฟังก์ชัน AWS Lambda เข้าถึงทรัพยากร AWS อื่นๆ ได้อย่างไร
คุณให้สิทธิ์แก่ฟังก์ชัน Lambda ของคุณเพื่อเข้าถึงทรัพยากรอื่นๆ โดยใช้ IAM Role AWS Lambda รับบทบาทในขณะที่ดำเนินการฟังก์ชัน Lambda ของคุณ เพื่อให้คุณสามารถควบคุมทรัพยากร AWS ที่จะใช้งานได้อย่างเต็มที่และปลอดภัย โปรดไปที่การตั้งค่า AWS Lambda เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับบทบาท
คำถาม: ฉันจะควบคุมว่าบัคเก็ตใดของ Amazon S3 จะเรียกใช้ฟังก์ชัน AWS Lambda ใดได้อย่างไร
เมื่อคุณกำหนดค่าบัคเก็ต Amazon S3 เพื่อส่งข้อความไปยังฟังก์ชัน AWS Lambda กฎนโยบายทรัพยากรจะถูกสร้างขึ้นเพื่อให้สิทธิ์การเข้าถึง โปรดไปที่คู่มือนักพัฒนา Lambda เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับนโยบายทรัพยากรและการควบคุมการเข้าถึงสำหรับฟังก์ชัน Lambda
คำถาม: ฉันจะควบคุมตาราง Amazon DynamoDB หรือสตรีม Amazon Kinesis ที่ฟังก์ชัน AWS Lambda สามารถสำรวจได้อย่างไร
การควบคุมการเข้าถึงจะได้รับการจัดการผ่านบทบาทของฟังก์ชัน Lambda บทบาทที่คุณกำหนดให้กับฟังก์ชัน Lambda ของคุณจะกำหนดว่า AWS Lambda สามารถสำรวจทรัพยากรใดได้เองบ้าง โปรดไปที่คู่มือนักพัฒนา Lambda เพื่อเรียนรู้เพิ่มเติม
คำถาม: ฉันจะควบคุมคิว Amazon SQS ที่ฟังก์ชัน AWS Lambda สามารถสำรวจได้อย่างไร
คําถาม: ฉันจะเข้าถึงทรัพยากรใน Amazon VPC จากฟังก์ชัน AWS Lambda ของฉันได้อย่างไร
คุณสามารถเปิดใช้งานฟังก์ชัน Lambda เพื่อเข้าถึงทรัพยากรใน VPC ของคุณได้โดยการระบุซับเน็ตและกลุ่มมาตรการรักษาความปลอดภัยให้เป็นส่วนหนึ่งในการกำหนดค่าฟังก์ชันของคุณ ฟังก์ชัน Lambda ที่กำหนดค่าให้เข้าถึงทรัพยากรใน VPC โดยเฉพาะจะไม่สามารถเข้าถึงอินเทอร์เน็ตได้เป็นค่าเริ่มต้น หากต้องการให้อินเทอร์เน็ตแก่ฟังก์ชันเหล่านี้ ให้ใช้อินเทอร์เน็ตเกตเวย์. ตามค่าเริ่มต้น ฟังก์ชัน Lambda จะสื่อสารกับทรัพยากรใน VPC แบบสแต็กคู่ผ่าน IPv4 คุณสามารถกำหนดค่าฟังก์ชันของคุณให้เข้าถึงทรัพยากรใน VPC แบบสแต็กคู่ผ่าน IPv6 ได้ หากต้องการรายละเอียดเพิ่มเติมเกี่ยวกับฟังก์ชัน Lambda ที่กำหนดค่าด้วย VPC โปรดดูที่การสร้างเครือข่ายส่วนตัว Lambda ด้วย VPC
คำถาม: การรับรองโค้ดสำหรับ AWS Lambda คืออะไร
การลงชื่อโค้ดสำหรับ AWS Lambda มอบการควบคุมความน่าเชื่อถือและความถูกต้องสมบูรณ์ ซึ่งช่วยให้คุณตรวจสอบยืนยันได้ว่ามีเฉพาะโค้ดที่ไม่ได้ปรับเปลี่ยนจากผู้พัฒนาที่ได้รับอนุมัติเท่านั้นที่จะปรับใช้ในฟังก์ชัน Lambda ของคุณ คุณสามารถใช้ AWS Signer ซึ่งเป็นบริการรับรองโค้ดที่มีการจัดการเต็มรูปแบบเพื่อลงชื่ออาร์ทิแฟกต์โค้ดแบบดิจิทัลและกำหนดค่าฟังก์ชัน Lambda ของคุณให้ตรวจสอบยืนยันลายเซ็นเมื่อมีการปรับใช้ ขณะนี้การลงชื่อโค้ดสำหรับ AWS Lambda มีให้บริการสำหรับฟังก์ชันที่รวมแพ็กเกจเป็นการเก็บถาวร ZIP เท่านั้น
คำถาม: ฉันจะสร้างตัวโค้ดที่มีการลงชื่อดิจิทัลได้อย่างไร
คุณสามารถสร้างอาร์ทิแฟกต์โค้ดที่มีการลงชื่อแบบดิจิทัลได้โดยใช้โพรไฟล์การลงชื่อผ่านทาง AWS Signer Console, Signer API, SAM CLI หรือ AWS CLI หากต้องการเรียนรู้เพิ่มเติม โปรดดูที่เอกสารประกอบสำหรับ AWS Signer
คำถาม: ฉันจะกำหนดค่าฟังก์ชัน Lambda ให้สามารถใช้งานการลงชื่อโค้ดได้อย่างไร
คำถาม: AWS Lambda ดำเนินการตรวจสอบลายเซ็นอย่างไรเมื่อมีการปรับใช้
AWS Lambda จะดำเนินการตรวจสอบลายเซ็นดังต่อไปนี้เมื่อมีการปรับใช้
• ลายเซ็นไม่สมบูรณ์ - เกิดขึ้นในกรณีที่ตัวโค้ดถูกดัดแปลงตั้งแต่เมื่อลงชื่อ
• ลายเซ็นไม่ตรง - เกิดขึ้นในกรณีที่ตัวโค้ดถูกเซ็นโดยใช้โพรไฟล์การลงชื่อที่ไม่ได้รับการอนุมัติ
• ลายเซ็นหมดอายุ - เกิดขึ้นในกรณีที่ลายเซ็นผ่านพ้นวันที่หมดอายุที่กำหนดไว้แล้ว
• ลายเซ็นถูกเพิกถอน - เกิดขึ้นในกรณีที่เจ้าของโพรไฟล์การลงชื่อเพิกถอนงานการลงชื่อ
หากต้องการเรียนรู้เพิ่มเติม โปรดดูที่เอกสารประกอบสำหรับ AWS Lambda
คำถาม: ฉันสามารถเปิดใช้การลงชื่อโค้ดสำหรับฟังก์ชันที่มีอยู่ได้หรือไม่
คำถาม: มีค่าใช้จ่ายเพิ่มเติมสำหรับการใช้การลงชื่อโค้ดสำหรับ AWS Lambda หรือไม่
ไม่มีค่าใช้จ่ายเพิ่มเติมเมื่อใช้การลงชื่อโค้ดสำหรับ AWS Lambda คุณเพียงชำระเงินในราคามาตรฐานสำหรับการใช้ AWS Lambda ก็พอ เพื่อเรียนรู้เพิ่มเติม โปรดดูที่ค่าบริการ
ความสามารถในการตรวจติดตามขั้นสูง
คำถาม: การควบคุมการบันทึกข้อมูลขั้นสูงใดบ้างที่ Lambda รองรับ
เพื่อให้คุณได้ประสบการณ์การบันทึกที่ง่ายดายและเพิ่มประสิทธิภาพตั้งแต่เริ่มใช้ AWS Lambda นำเสนอการควบคุมการบันทึกขั้นสูง เช่น ความสามารถในการบันทึกข้อมูลบันทึกรูปแบบในโครงสร้าง JSON แบบเนทีฟ ควบคุมการกรองระดับข้อมูลบันทึกของข้อมูลบันทึกฟังก์ชัน Lambda โดยไม่ต้องทําการเปลี่ยนแปลงโค้ดใดๆ และปรับแต่งกลุ่มข้อมูลบันทึกของ Amazon CloudWatch ที่ Lambda ส่งบันทึกไป
คำถาม: ฉันสามารถใช้การควบคุมการบันทึกข้อมูลขั้นสูงเพื่ออะไรได้บ้าง
คุณสามารถบันทึกข้อมูลบันทึกฟังก์ชัน Lambda รูปแบบในโครงสร้าง JSON โดยไม่ต้องใช้ไลบรารีการบันทึกของคุณเอง ข้อมูลบันทึกในโครงสร้าง JSON ช่วยให้ค้นหา กรอง และวิเคราะห์รายการข้อมูลบันทึกจํานวนมากได้ง่ายยิ่งขึ้น คุณสามารถควบคุมการกรองระดับข้อมูลบันทึกของข้อมูลบันทึกฟังก์ชัน Lambda ได้โดยไม่ต้องทําการเปลี่ยนแปลงโค้ดใดๆ ซึ่งช่วยให้คุณสามารถเลือกระดับความละเอียดในการบันทึกที่จําเป็นสําหรับฟังก์ชัน Lambda ได้ โดยไม่ต้องค้นในข้อมูลบันทึกจํานวนมากเมื่อแก้จุดบกพร่องและแก้ไขข้อผิดพลาด คุณยังสามารถตั้งค่าว่าจะส่งข้อมูลบันทึกไปยังกลุ่มข้อมูลบันทึก Amazon CloudWatch ของ Lambda ใด ทําให้ง่ายต่อการรวมข้อมูลบันทึกจากหลายฟังก์ชันภายในแอปพลิเคชันได้ในที่เดียว จากนั้นคุณสามารถใช้นโยบายความปลอดภัย การกํากับดูแล และการเก็บรักษากับข้อมูลบันทึกที่ระดับแอปพลิเคชัน แทนที่จะใช้แยกทีละรายการกับทุกฟังก์ชัน
ถาม: ฉันจะใช้การควบคุมการบันทึกข้อมูลขั้นสูงได้อย่างไร
คุณสามารถระบุการควบคุมการบันทึกขั้นสูงสําหรับฟังก์ชัน Lambda ของคุณได้โดยใช้ API ของ AWS Lambda API, คอนโซล AWS Lambda, CLI ของ AWS, AWS Serverless Application Model (SAM) และ AWS CloudFormation หากต้องการเรียนรู้เพิ่มเติม เยี่ยมชมเปิดบล็อกโพสต์เพื่อดูการควบคุมการบันทึกข้อมูลขั้นสูงหรือคู่มือนักพัฒนา Lambda
ถาม: ฉันสามารถใช้ไลบรารีข้อมูลบันทึกของตัวเองเพื่อสร้างข้อมูลบันทึกในโครงสร้าง JSON สําหรับฟังก์ชัน Lambda ของฉันได้หรือไม่
ได้ คุณสามารถใช้ไลบรารีข้อมูลบันทึกของคุณเองเพื่อสร้างข้อมูลบันทึก Lambda ในรูปแบบโครงสร้าง JSON ได้ เพื่อให้แน่ใจว่าไลบรารีข้อมูลบันทึกของคุณทํางานได้อย่างราบรื่นด้วยความสามารถเนทีฟในการบันทึกในโครงสร้าง JSON ของ Lambda นั้น Lambda จะไม่เข้ารหัสสองครั้งกับข้อมูลบันทึกใดๆ ที่สร้างโดยฟังก์ชันของคุณที่เข้ารหัส JSON อยู่แล้ว คุณยังสามารถใช้ไลบรารี Powertools สำหรับ AWS Lambda เพื่อบันทึกข้อมูลบันทึก Lambda ในรูปแบบโครงสร้าง JSON ได้อีกด้วย
ถาม: ฉันจะถูกเรียกเก็บค่าบริการในการใช้การควบคุมการบันทึกขั้นสูงอย่างไร
ไม่มีค่าใช้จ่ายเพิ่มเติมในการใช้การควบคุมการบันทึกขั้นสูงบน Lambda คุณจะถูกเรียกเก็บค่าบริการสําหรับการนําเข้าและเก็บข้อมูลบันทึก Lambda ของคุณโดย Amazon CloudWatch Logs ต่อไป ดูหน้าค่าบริการของ CloudWatch สําหรับรายละเอียดค่าบริการข้อมูลบันทึก
ถาม: สัญญาณแอปพลิเคชัน CloudWatch คืออะไรและใช้กับ Lambda อย่างไร
สัญญาณแอปพลิเคชัน CloudWatch เป็นโซลูชัน Application Performance Monitoring (APM) ซึ่งช่วยให้นักพัฒนาและผู้ปฏิบัติงานสามารถตรวจติดตามสถานะและประสิทธิภาพของแอปพลิเคชันแบบไม่ต้องใช้เซิร์ฟเวอร์ที่สร้างขึ้นด้วย Lambda ได้อย่างง่ายดาย สัญญาณแอปพลิเคชันมีแดชบอร์ดมาตรฐานที่สร้างไว้ล่วงหน้าสำหรับตัววัดแอปพลิเคชันที่สำคัญ รายการติดตามที่สัมพันธ์กัน และการโต้ตอบระหว่างฟังก์ชัน Lambda และการพึ่งพาของฟังก์ชันโดยไม่ต้องใช้เครื่องมือด้วยตนเองหรือการเปลี่ยนแปลงโค้ดจากนักพัฒนา
ถาม: ฉันจะใช้สัญญาณแอปพลิเคชันกับ Lambda ได้อย่างไร
คุณสามารถเปิดใช้งานสัญญาณแอปพลิเคชันสำหรับฟังก์ชันของคุณด้วยการคลิกครั้งเดียวในส่วน “เครื่องมือการตรวจติดตามและการปฏิบัติการ” ภายใต้แท็บการกำหนดค่าในคอนโซล Lambda หลังจากเปิดใช้งานสัญญาณแอปพลิเคชันแล้ว คุณสามารถดูแดชบอร์ดที่สร้างไว้ล่วงหน้า แผนที่บริการ และอื่น ๆ รวมถึงวิเคราะห์ประสิทธิภาพและสถานะของแอปพลิเคชันแบบไม่ต้องใช้เซิร์ฟเวอร์ของคุณในคอนโซล CloudWatch ได้ หากต้องการเรียนรู้เพิ่มเติม โปรดไปที่คู่มือนักพัฒนา Lambda และ คู่มือนักพัฒนาสัญญาณแอปพลิเคชัน ไปที่หน้าราคา CloudWatch เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับวิธีที่คุณถูกเรียกเก็บค่าบริการสำหรับการใช้สัญญาณแอปพลิเคชันกับฟังก์ชัน Lambda ของคุณ
ถาม: CloudWatch Live Tail คืออะไรและใช้กับ Lambda อย่างไร
CloudWatch Logs Live Tail เป็นความสามารถในการวิเคราะห์และการสตรีมข้อมูลบันทึกเชิงโต้ตอบ ช่วยให้คุณสามารถดูข้อมูลบันทึกได้แบบเรียลไทม์ ซึ่งช่วยให้พัฒนาและแก้ไขปัญหาของฟังก์ชัน Lambda ได้ง่ายขึ้น ดังนั้น จึงทำให้นักพัฒนาทดสอบและตรวจสอบการเปลี่ยนแปลงโค้ดหรือการกำหนดค่าแบบเรียลไทม์ได้รวดเร็ว ซึ่งช่วยให้การเขียน ทดสอบ และนำไปปรับใช้ (เรียกอีกอย่างว่า “inner dev loop”) ดำเนินไปอย่างรวดเร็วยิ่งขึ้นเมื่อสร้างแอปพลิเคชันด้วย Lambda นอกจากนี้ ประสบการณ์การใช้งาน Live Tail ยังช่วยให้ทีมผู้ปฏิบัติงานและทีม DevOps ตรวจจับและแก้ไขความล้มเหลวหรือข้อผิดพลาดที่สำคัญในโค้ดฟังก์ชัน Lambda อย่างมีประสิทธิภาพมากขึ้น พร้อมช่วยลดเวลาเฉลี่ยในการกู้คืน (MTTR) เมื่อทำการแก้ไขข้อผิดพลาดของฟังก์ชัน Lambda
ถาม: ฉันจะใช้ Live Tail กับ Lambda ได้อย่างไร
หากต้องการใช้ Live Tail สำหรับฟังก์ชัน Lambda ของคุณ โปรดไปที่คอนโซล Lambda และคลิกปุ่ม “เปิด CloudWatch Live Tail” ในตัวแก้ไขโค้ด สำหรับข้อมูลเพิ่มเติม โปรดไปที่คู่มือนักพัฒนา Lambda ไปที่หน้าราคา CloudWatch เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับวิธีที่คุณถูกเรียกเก็บค่าบริการสำหรับการใช้ Live Tail กับฟังก์ชัน Lambda ของคุณ
ฟังก์ชัน AWS Lambda ใน Java
คำถาม: ฉันจะคอมไพล์โค้ด Java ของฟังก์ชัน AWS Lambda ได้อย่างไร
คุณสามารถใช้เครื่องมือมาตรฐานเช่น Maven หรือ Gradle เพื่อคอมไพล์ฟังก์ชัน Lambda ของคุณ กระบวนการสร้างของคุณควรเลียนแบบกระบวนการสร้างเดียวกันที่คุณจะใช้เพื่อคอมไพล์โค้ด Java ที่ขึ้นอยู่กับ AWS SDK เรียกใช้เครื่องมือคอมไพล์ Java ในไฟล์ต้นฉบับของคุณและรวม AWS SDK 1.9 หรือเวอร์ชันที่ใหม่กว่าด้วยการอ้างอิงแบบขนานในเส้นทางเดินระบบของคุณ สำหรับรายละเอียดเพิ่มเติม โปรดดูเอกสารประกอบของเรา
คำถาม: สภาพแวดล้อม JVM แบบใดที่ Lambda ใช้สำหรับการดำเนินการฟังก์ชันของฉัน
ฟังก์ชัน AWS Lambda ใน Node.js
คำถาม: ฉันสามารถใช้แพคเกจกับ AWS Lambda ได้หรือไม่
ใช่ คุณสามารถใช้แพคเกจ NPM และแพคเกจที่กำหนดเองได้ เรียนรู้เพิ่มเติมที่นี่
คำถาม: ฉันสามารถดำเนินการโปรแกรมอื่นจากภายในฟังก์ชัน AWS Lambda ที่เขียนใน Node.js ได้หรือไม่
ใช่ โปรแกรมทดสอบใน Lambda ช่วยให้คุณสามารถเรียกใช้ชุด ("เชลล์") สคริปต์ รันไทม์ภาษาอื่นๆ ชุดคำสั่งยูทิลิตี และไฟล์ปฏิบัติการ เรียนรู้เพิ่มเติมที่นี่
คำถาม: สามารถใช้โมดูลดั้งเดิมกับฟังก์ชัน AWS Lambda ที่เขียนใน Node.js ได้หรือไม่
ใช่ โมดูลเนทีฟที่เชื่อมโยงแบบคงที่สามารถรวมอยู่ในไฟล์ ZIP ที่คุณอัปโหลด รวมทั้งโมดูลที่เชื่อมโยงแบบไดนามิกที่คอมไพล์ด้วย rpath ที่ชี้ไปยังไดเรกทอรีรากของ Lambda เรียนรู้เพิ่มเติมที่นี่
คำถาม: ฉันสามารถดำเนินการไบนารีที่มี AWS Lambda เขียนใน Node.js ได้หรือไม่
ใช่ คุณสามารถใช้คำสั่ง child_process ของ Node.js เพื่อดำเนินการไบนารีที่คุณรวมไว้ในฟังก์ชันหรือไฟล์ปฏิบัติการใดๆ จาก Amazon Linux ที่สามารถมองเห็นได้จากฟังก์ชันของคุณ หรืออีกหลายแพ็กเกจ NPM ที่มีอยู่ที่ตัดไบนารีบรรทัดคำสั่ง เช่น node-ffmpeg เรียนรู้เพิ่มเติมที่นี่
คำถาม: ฉันจะปรับใช้โค้ดฟังก์ชัน AWS Lambda ที่เขียนใน Node.js ได้อย่างไร
หากต้องการใช้ฟังก์ชัน Lambda ที่เขียนขึ้นใน Node.js เพียงแค่คุณใส่โค้ด Javascript และไลบรารีที่อ้างอิงเป็นไฟล์ ZIP คุณสามารถอัปโหลดไฟล์ ZIP จากสภาพแวดล้อมท้องถิ่นของคุณหรือระบุตำแหน่งที่ตั้ง Amazon S3 ที่มีไฟล์ ZIP อยู่ สำหรับรายละเอียดเพิ่มเติม โปรดดูเอกสารประกอบของเรา
ฟังก์ชัน AWS Lambda ใน Python
คำถาม: ฉันสามารถใช้แพคเกจ Python กับ AWS Lambda ได้หรือไม่
ฟังก์ชัน AWS Lambda ใน C#
คำถาม: ฉันจะจัดแพคเกจและปรับใช้ฟังก์ชัน AWS Lambda ใน C # ได้อย่างไร
ฟังก์ชัน AWS Lambda ใน PowerShell
ถาม: ฉันจะปรับใช้งานโค้ดฟังก์ชัน AWS Lambda ที่เขียนใน PowerShell ได้อย่างไร
แพคเกจการปรับใช้งาน PowerShell Lambda เป็นไฟล์ ZIP ที่ประกอบด้วยสคริปต์ PowerShell, โมดูล PowerShell ที่จำเป็นสำหรับสคริปต์ PowerShell และการผนวกรวมที่จำเป็นต่อการโฮสต์ PowerShell Core จากนั้นใช้โมดูล AWSLambdaPSCore PowerShell ที่คุณสามารถติดตั้งได้จากPowerShell Gallery เพื่อสร้างแพคเกจการปรับใช้งาน PowerShell Lambda
ฟังก์ชัน AWS Lambda ใน Go
คำถาม: ฉันจะจัดแพคเกจและปรับใช้งานฟังก์ชัน AWS Lambda ใน Go ได้อย่างไร
อัปโหลดส่วนที่สามารถปฏิบัติได้ของ Go เป็นไฟล์ ZIP ผ่าน AWS CLI หรือคอนโซล Lambda แล้วเลือกรันไทม์ go1.x คุณสามารถใช้เครื่องมือที่มีมาตั้งแต่แรกของ Go เพื่อสร้างและทำแพคเกจโค้ดของคุณได้ด้วย Lambda สำหรับรายละเอียดเพิ่มเติม โปรดอ่านเอกสารประกอบ
ฟังก์ชัน AWS Lambda ใน Ruby
คำถาม: ฉันจะปรับใช้งานโค้ดฟังก์ชัน AWS Lambda ที่เขียนใน Ruby ได้อย่างไร
หัวข้ออื่นๆ
คำถาม: AWS Lambda สนับสนุน Amazon Linux, Node.js, Python, JDK, .NET Core, SDK และไลบรารีเพิ่มเติมเวอร์ชันใด
คุณสามารถดูรายการเวอร์ชันที่สนับสนุนได้ที่นี่
คำถาม: ฉันสามารถเปลี่ยนเวอร์ชันของ Amazon Linux หรือรันไทม์ภาษาได้หรือไม่
ไม่ได้ AWS Lambda มีระบบปฏิบัติการและรันไทม์ภาษาที่ได้รับการจัดการแบบเวอร์ชันเดียวสำหรับผู้ใช้บริการทั้งหมด คุณสามารถนำรันไทม์ภาษาของคุณมาใช้ใน Lambda ได้
คำถาม: ฉันจะบันทึกและตรวจสอบการเรียกใช้ที่ทำกับ AWS Lambda API ได้อย่างไร
คำถาม: ฉันจะประสานงานการเรียกใช้ระหว่างหลายฟังก์ชัน Lambda ได้อย่างไร
คุณสามารถใช้ฟังก์ชัน Amazon Step เพื่อประสานงานฟังก์ชัน Lambda หลายฟังก์ชัน คุณสามารถเรียกใช้ฟังก์ชัน Lambda หลายๆ แบบโดยส่งผ่านเอาต์พุตของหนึ่งฟังก์ชันไปยังอีกอันหรือแบบคู่ขนาน โปรดดูรายละเอียดเพิ่มเติมที่เอกสารประกอบ