Serverless
Serverless คือ Cloud computing ที่สามารถเรียกใช้งานแอปพลิเคชันและบริการต่างๆ โดยไม่ต้องจัดการด้านโครงสร้างพื้นฐานระบบคลาวด์ (Cloud Infrastructure) เอง สามารถใช้บริการการประมวลผล (Compute) จากผู้ให้บริการ Cloud ลดค่าใช้จ่ายในการดำเนินงาน การใช้งานที่เป็นแบบเช่าใช้ ไม่จำเป็นต้องลงทุนจำนวนมาก เหมาะมากสำหรับงานที่พึ่งเริ่มต้น สามารถควบคุมงบประมาณได้ง่าย
Fusion Solution ให้บริการ Azure Serverless ช่วยคุณลดค่าใช้จ่าย Server เรายินดีทำการ Estimate ค่าใช้จ่ายให้ก่อนดำเนินการ
ประโยชน์จากการใช้งานบริการ Serverless
- Pay as you go : ลดต้นทุนการดำเนินงาน จ่ายเฉพาะส่วนที่ใช้
- Increased scalability: สามารถปรับขยายความต้องการที่เพิ่มขึ้นโดยอัตโนมัติ เพื่อตอบสนองความต้องการของผู้ใช้ เลี่ยงการหยุดชะงักการทำงาน รับประกันประสบการณ์การใช้งานอย่างราบรื่น Developer ไม่ต้องทำงานร่วมกันในการปรับจูนระบบในเรื่องของการ Scale Up/Down
- Flexibility : สร้างและเรียกใช้แอปพลิเคชันและบริการตามต้องการ ตอบสนองต่อความต้องการทางธุรกิจที่เปลี่ยนแปลงได้อย่างรวดเร็ว Function as a service สิ่งที่ Developer ต้องทำคือแค่ Focus กับการเขียน Code เนื่องจากโดยปกติแล้วจะต้องออกแบบ Code มาให้เหมาะกับ Multithread และการโดนเรียกด้วย HTTP เป็นจำนวนมาก
ช่องทางการใช้ Serverless
Kubeless และ Fission – เป็น Open Source FaaS ที่ Run ด้วย Kubernetes
Google App Engine – เปิดตัวในปี 2008 โดยมีหนึ่งในลูกค้าชื่อดังใช้งานคือ Snapchat ภาษาที่รองรับมีแค่ Python ณ เวลานั้น แต่ปัจจบุันสามารถใช้งานได้หลากหลายภาษาแล้ว เช่น Node.js, Java, Ruby, C#, Go, Python, หรือ PHP
AWS Lambda – เป็นของ Amazon ทำขึ้นในปี 2014 เป็นบริการที่เป็นที่นิยมในปัจจุบัน
Google Cloud Functions – เปิดตัวในปี 2016 เป็น Serverless อีกรูปแบบหนึ่งที่ให้บริการด้วย Google Cloud Platform
IBM Cloud Functions – เปิดตัวปี 2016 จากค่าย IBM
Azure Functions – จากค่าย Microsoft สามารถใช้งานได้จาก Azure Public Cloud หรือ On-premises ก็ได้ผ่านทาง Azure Stack
Cloudflare Workers – เปิดตัวปี 2017 จาก Cloudflareซึ่งถ้าท่านผู้อ่านสนใจสามารถเลือกใช้งาน Severless ของแต่ละเจ้าตามความต้องการได้เลยนะครับ
บริการจาก Azure Function scalable e-commerce web app
Dataflow
- User accesses the web app in browser and signs in.
- Browser pulls static resources such as images from Azure Content Delivery Network.
- User searches for products and queries SQL database.
- Web site pulls product catalog from database.
- Web app pulls product images from Blob Storage.
- Page output is cached in Azure Cache for Redis for better performance.
- User submits order and order is placed in the queue.
- Azure Functions processes order payment.
- Azure Functions makes payment to third party and records payment in SQL database.
Reference