ขอแนะนำ API Gateway ที่ใช้งานได้บน Cloudflare Workers
(github.com/day1swhan)ขอแนะนำ API Gateway ที่พร้อมใช้งานได้ทันทีแบบ "คลิก" ในสภาพแวดล้อมอย่าง Cloudflare Workers ที่ไม่สามารถใช้ npm ได้
ระหว่างที่ผมกำลังดูแล API server ด้วย Workers แล้วต้องจัดการคำขอด้วย switch จนเริ่มหงุดหงิด ก็เลยสร้าง API Gateway สไตล์ Express.js ขึ้นมา
สำหรับผู้ที่เคยใช้ Express.js จะคุ้นเคยกับการรองรับ middleware และ error handler อีกทั้งยังมีการ parse URL Params, QueryString และ Cookie มาให้เป็นค่าเริ่มต้น เพื่อไม่ต้องใช้ middleware แยกต่างหากสำหรับสิ่งที่มักจำเป็นในสภาพแวดล้อม production
API ที่รองรับเพิ่มเติมมีดังนี้
-
Context API: หากใช้ฟังก์ชัน
waitUntilจะสามารถประมวลงานอย่าง DB PutItem แบบ asynchronous ได้ ทำให้ตอบกลับผู้ใช้ได้โดยไม่เกิดการ block -
Binding API: สามารถใช้งานบริการของ Cloudflare เช่น R2 และ KV Store ได้
ทิปเพิ่มเติม)
- แผนฟรีของ Workers จำกัด CPU time ไว้ที่ 10ms
- แต่เวลาที่ใช้กับงาน I/O ของบริการภายนอกอย่าง Fetch จะไม่ถูกนับรวม
- คำขอส่วนใหญ่ที่ไม่ใช่งานแบบ CPU intensive ใช้เวลาเพียง 1~2ms ก็เพียงพอ
8 ความคิดเห็น
เพิ่มเติม) สำหรับผู้ที่สงสัยเกี่ยวกับหลักการทำงานภายใน แนะนำให้อ่านบทความบันทึกการพัฒนาด้วย
ก่อนอื่น.. เป็นกำลังใจให้นะ สู้ๆ!!!
honoดีเลย..ผมก็เคยใช้
honoเหมือนกัน.. ทำออกมาได้ดีมาก..ขอบคุณครับ 555 ดูเหมือนว่านิสัยที่ควรค้นหาดูก่อนเสมอ ก่อนจะหัวร้อนลงมือทำเอง จะสำคัญจริง ๆ นะครับ.. 555
ส่วนตัวแล้ว
honoก็ใช้งานสะดวกดีเหมือนกันอันนี้ก็น่าสนใจเหมือนกัน
ขอบคุณครับ ฮ่าๆ
ขอแนะนำให้ลองดูเฟรมเวิร์กที่คล้ายกันอย่าง https://hono.dev/ ด้วยครับ
และนักพัฒนาก็สังกัด Cloudflare โดยตรงด้วยครับ
อุ๊ย...ขอบคุณครับ 555
นี่คือวิธีใช้งาน worker เบื้องต้นและกรณีการนำไปใช้งาน