Cloudflare ชี้บริการ Workers ใช้ V8 Isolates ประหยัดหน่วยความจำกว่า VM, ไม่เสียเวลา cold start, ถูกกว่า AWS Lambda

2018-11-12

Cloudflare Workers เป็นบริการโค้ดแบบ serverless แบบเดียวกับ AWS Lambda และ Google Cloud Functions เมื่อสัปดาห์ที่แล้วทาง Cloudflare ก็เขียนบล็อกเล่าถึงเทคโนโลยีภายในของ Workers ที่เป็นฟีเจอร์ Isolates ของเอนจิน V8

Cloudflare Workers และ AWS Lambda เป็นคู่แข่งกันโดยตรง หลังจาก AWS เปิดตัว Lambda@Edge ที่เปิดให้รันโค้ดที่ปลายทางของ CDN

Isolates เป็นระบบ context ที่กินหน่วยความจำน้อย และเปิดให้รันโค้ดที่ไม่น่าไว้ใจภายใต้สิทธิ์ที่ถูกจำกัดไว้ โดยตัวโค้ดไม่สามารถเข้าถึงหน่วยความจำของ context อื่นได้ แม้จะรันในโปรเซสเดียวกัน การใช้ Isolates ทำให้ Cloludflare Workers แชร์โค้ดทุกอย่างเท่าที่เป็นไปได้ ตั้งแต่ระบบปฎิบัติการขึ้นมาจนถึงตัวรันไทม์ จุดสำคัญคือโค้ดที่รันนานๆ ครั้งจะไม่ต้องเสียเวลา cold start ที่กินเวลา 0.5-10 วินาที

ทาง Cloudflare ชี้ว่า Lambda นั้นคิดเงินตลอดเวลาที่รันโค้ดแม้จะรอเซิร์ฟเวอร์ภายนอก ส่วน Workers คิดตามเวลาที่รันจริงเท่านั้น

อย่างไรก็ดีบริการของ Cloudflare เองมีข้อจำกัดกว่าบริการคลาวด์เต็มรูปแบบอื่นๆ มาก เช่น ระยะเวลารันโค้ดกลับคิดตามแพ็กเกจที่ใช้งาน โดยแพ็กเกจฟรีที่ซื้อ Workers เพิ่มเติมเดือนละ 5 ดอลลาร์จะสามารถรันได้เพียงทีละ 5ms เท่านั้น และหากต้องการรันโค้ดนานเป็นพิเศษก็ต้องซื้อแพ็กเกจ Enterprise ไปเลย ไม่สามารถซื้อเฉพาะ Workers แยกได้ ส่วนบริการฐานข้อมูลที่ชื่อว่า Workers KV ตอนนี้สถานะก็ยังเป็นเบต้าวงปิดเท่านั้น

Cloudflare Workers รองรับเฉพาะ Javascript หรือภาษาที่คอมไฟล์เป็น WebAssembly ได้เท่านั้น

ที่มา – Cloudflare

No Description