AWS Lambda คืออะไร

AWS Lambda คือ Service หนึ่งของ AWS ที่ทำหน้าที่บริการแบบ Serverless คือการเขียน Code เสร็จแล้วสามารถ Push Code ขึ้นไป ส่วนเรื่องเกี่ยวกับ Server นั้นให้ Serverless เป็นตัวจัดการเช่น หากมีคนใช้งานเยอะก็จำนวนเครื่อง Server ขึ้นตาม ช่วงไหนคนใช้น้อยก็ Scale Down ลงไปอัตโนมัติ สมมติมีการพัฒนา Application เกี่ยวกับการจ่ายเงิน แต่มีช่วงเวลาหนึ่งลูกค้ามีการใช้งานเป็นจำนวนมาก ซึ่งต้องมีการจัดการบริหาร Server เพื่อให้ตอบสนองการใช้งานของลูกค้าได้อย่างมีประสิทธิภาพ ซึ่งการจัดการบริหารนี้เองหากใช้คนจัดการก็จะใช้เวลาเป็นอย่างมาก ดังนั้น AWS Lambda เป็น Service ที่มาช่วยจัดการ คอยคำนวณการทำงานของระบบว่าต้องการทรัพยากรส่วนไหนเพิ่มหรือไม่ หากต้องการก็ Auto Scaling ขึ้นมา การใช้งาน AWS Lambda นั้นก็ง่ายเพราะไม่ใช่ภาษาใหม่ เพียงแค่ใช้ Library ซึ่งจะมี Lambda Function ให้ใช้งานอยู่ จากนั้นก็เริ่ม Desing การทำงานต่างๆใน AWS Management Console หากมี Event ใดตรงตามเงื่อนไขที่ได้ตั้งค่าไว้ก็จะมีการตอบสนองอย่างรวดเร็ว

Lambda Function

แต่ก่อนนั้นหากเราพัฒนา Web Application หรือ Back-End ขึ้นมาเราต้องนึกถึงว่าจะต้อง Deploy อะไรลงไปบ้าง จะ Maintain อย่างไร สร้าง Log อย่างไร แต่ปัจจุบันเราไม่ต้องกังวลถึงการ Deploy เลยเพราะเราสามารถใช้ฟังก์ชัน(Function)ได้ ซึ่งฟังก์ชันเป็นการกำหนดเงื่อนไขใดเงื่อนไขหนึ่งขึ้นมา หากมีข้อมูลหรือ Input เข้ามาตรงกับฟังก์ชันที่เราสร้างไว้ ฟังก์ชันก็จะ Return Output ออกมาเพื่อสั่งให้โปรแกรมทำงานต่อไป เช่น Feature เกี่ยวกับการ Upload รูปภาพ เมื่อลูกค้ามีการ Upload รูปภาพเข้ามา(Input)จะมีฟังก์ชันหนึ่งคอย Resize รูปภาพอีกที(Output) เพื่อไม่ให้ Sever เก็บไฟล์รูปภาพที่ใหญ่จนเกินไป

ข้อดีของ AWS Lambda

1. ไม่ต้องจัดการ Servers เช่น ไม่ต้องกังวลว่า Servers ร้อนไหม ไม่ต้องกังวล Patching ที่มีการ Update หรือ การจัดการ Security ต่างๆ
2. AWS Lambda สามารถ Auto Scaling ได้ หากมี Function ไหนใช้งานมาก ก็จะ Auto Scaling เครื่อง Servers เพิ่มมากขึ้น เพื่อให้ตอบสนองการใช้งานของลูกค้า
3. การใช้จ่ายที่คุ้มค่าเพราะ AWS Lambda จะมีการคิดค่าใช้งานเมื่อมีการใช้งานจริงๆ ไม่ได้มีการคิดเป็นชั่วโมงหรือรายนาที
4. ตอบสนองการใช้งานอย่างรวดเร็ว มี Performance ที่ดี
5. สามารถเชื่อมต่อ Services อื่นๆได้เป็นอย่างดี เช่นหากใช้ DynamoDB อยู่ก็สามารถเชื่อมกับ Lambda Function ได้อย่างง่ายดาย
6. ง่ายต่อการใช้งาน สามารถเข้าใจการใช้งานได้ง่าย มี Monitor หรือ Debug ให้ 

ป้ายกำกับ

แสดงเพิ่มเติม

บทความยอดนิยม

Software Development Life Cycle (SDLC) คืออะไร ทำไมจำเป็นต่อการพัฒนาซอฟต์แวร์

ม.ปลายอยากเข้าสายคอม วิทยาการคอม วิศวกรรมคอม เตรียมตัวอย่างไร ต้องมีพื้นฐานอะไรบ้าง

Automation testing หรือ การทดสอบซอฟต์แวร์อัตโนมัติ คืออะไร ทำไมถึงสำคัญต่อการทดสอบซอฟต์แวร์

วิธีเก็บ วิเคราะห์ รวบรวม requirement อย่างไรให้มีประสิทธิภาพ

Performance Test คือ อะไร วัดประสิทธิภาพของระบบ ล่มไม่ล่ม จะรู้ได้อย่างไร

8 สิ่งที่ AI จะมาเปลี่ยนโลกในอนาคต

ถอดรหัสความลับเครื่อง Enigma จุดเริ่มต้นและจุดจบของสงครามโลกครั้งที่ 2