~/VibeHandbook
PDF ฟรี

โครงสร้างพื้นฐาน

developers.cloudflare.com

Edge Functions

มันคืออะไร

ลองนึกถึงเชนพิซซ่าที่มีสาขาอยู่ในทุกย่านชุมชน: ออร์เดอร์ของคุณจะถูกทำที่ร้านที่อยู่ใกล้คุณที่สุด พิซซ่าจึงมาถึงแบบร้อนๆ และรวดเร็ว แทนที่จะต้องขับรถข้ามประเทศมาส่ง "the " (ขอบ) หมายถึงสถานที่ใกล้เคียงเหล่านั้น Edge functions คือโค้ดชิ้นเล็กๆ ที่ทำงานบนเซิร์ฟเวอร์ซึ่งกระจายอยู่ทั่วโลก อยู่ใกล้กับผู้ใช้แอปของคุณในทางกายภาพ แทนที่ทุกคำขอ (request) จะต้องเดินทางไปยังศูนย์ข้อมูลแห่งเดียวที่อยู่ไกลออกไป มันจะทำงานที่ตำแหน่งที่ใกล้ที่สุด คำตอบจึงกลับมาเร็ว คุณเขียนฟังก์ชัน ส่วนแพลตฟอร์มจะจัดการว่าจะรันที่ไหนและเมื่อไหร่

จุดแข็ง

  • ค่าความหน่วง (latency) ต่ำมาก — โค้ดทำงานใกล้ผู้ใช้ มักจะภายในไม่กี่มิลลิวินาที
  • ขยายขนาด (scale) ได้อัตโนมัติเพื่อรองรับทราฟฟิกจำนวนมหาศาลโดยไม่ต้องมีเซิร์ฟเวอร์ให้คุณดูแล
  • ราคาถูกสำหรับงานทั่วไป โดยปกติคุณจ่ายตามจำนวนคำขอ
  • เหมาะมากสำหรับการปรับแต่งประสบการณ์ผู้ใช้ (personalization), การรีไดเรกต์, การตรวจสอบสิทธิ์ (auth checks) และ (Application Programming Interface — จุดเชื่อมต่อที่ซอฟต์แวร์อื่นเรียกใช้เพื่อคุยกับแอปของคุณ) แบบเบาๆ
  • ไม่มีโครงสร้างพื้นฐานที่ต้องแพตช์หรือคอยดูแลให้ทำงานอยู่ตลอด

ข้อแลกเปลี่ยน

  • มีข้อจำกัดที่เข้มงวด: เวลาทำงานสั้น หน่วยความจำน้อย และขนาดบันเดิล (bundle) ถูกจำกัด
  • รันไทม์ (runtime) มีจำกัด — ไลบรารี Node.js และโมดูลเนทีฟ (native modules) จำนวนมากใช้งานไม่ได้
  • ไม่มีที่เก็บข้อมูลถาวรในเครื่อง (persistent local storage) หรือการเชื่อมต่อระยะยาว คุณต้องพึ่งฐานข้อมูลภายนอก
  • ดีบักยากกว่าเพราะตรรกะการทำงานกระจายอยู่หลายตำแหน่งทั่วโลก
  • งานที่ใช้ CPU หนักๆ (การประมวลผลภาพ, การคำนวณขนาดใหญ่) ไม่เหมาะกับสิ่งนี้

เมื่อไหร่ควรใช้

เลือกใช้ edge functions เมื่อคุณต้องการคำตอบที่รวดเร็วและกระจายอยู่ทั่วโลกสำหรับงานเล็กๆ เช่น การทดสอบ A/B, การระบุตำแหน่งทางภูมิศาสตร์ (geolocation), การเขียนคำขอใหม่ (request rewriting), การตรวจสอบโทเค็น ( validation) หรือชั้น API บางๆ ที่อยู่หน้าฐานข้อมูล

เข้ากับ vibe coding แค่ไหน

นี่เป็นหนึ่งในเป้าหมายที่เป็นมิตรที่สุดสำหรับการปล่อยให้ AI จัดการเรื่องการเชื่อมต่อระบบ แพลตฟอร์มอย่าง Cloudflare Workers, Vercel และ Deno ใช้ไฟล์ตั้งค่า (config) ที่เรียบง่าย และ AI สามารถสร้างโครงฟังก์ชัน เขียนไฟล์ตั้งค่าสำหรับการดีพลอย (deploy config) และรันคำสั่ง (command-line tool — เครื่องมือบรรทัดคำสั่ง) ให้คุณได้ตั้งแต่ต้นจนจบ เคล็ดลับ: บอกแพลตฟอร์มของคุณให้ agent รู้ล่วงหน้า (เช่น "Cloudflare Workers") เพื่อให้มันสร้างรูปแบบไฟล์ตั้งค่าที่ถูกต้องและเคารพข้อจำกัดของรันไทม์บนแพลตฟอร์มนั้น มิฉะนั้นมันอาจสันนิษฐานว่าเป็น Node.js เต็มรูปแบบและเขียนโค้ดที่ล้มเหลวตอนดีพลอย

# wrangler.toml — Cloudflare Workers edge function
name = "my-edge-app"
main = "src/index.js"
compatibility_date = "2026-06-01"

[vars]
GREETING = "hello from the edge"
# Deploy and tail logs
npx wrangler deploy
npx wrangler tail