การเปรียบเทียบเวอร์ชันของฟังก์ชันคลาวด์

Cloud Functions มีผลิตภัณฑ์สองเวอร์ชัน ได้แก่ Cloud Functions (รุ่นที่ 1) เวอร์ชันดั้งเดิม และ Cloud Functions (รุ่นที่ 2) ซึ่งเป็นเวอร์ชันใหม่ที่สร้างบน Cloud Run และ Eventarc เพื่อมอบชุดคุณลักษณะที่ได้รับการปรับปรุง หน้านี้อธิบายคุณสมบัติใหม่ๆ ที่นำมาใช้ใน Cloud Functions (รุ่นที่ 2) และให้การเปรียบเทียบระหว่างผลิตภัณฑ์ทั้งสองเวอร์ชัน

เราขอแนะนำให้คุณเลือกฟังก์ชันคลาวด์ (รุ่นที่ 2) สำหรับฟังก์ชันใหม่ทุกครั้งที่เป็นไปได้ อย่างไรก็ตาม เราวางแผนที่จะรองรับ Cloud Functions (รุ่นที่ 1) ต่อไป

ใหม่ในฟังก์ชั่นคลาวด์ (รุ่นที่ 2)

Cloud Functions (รุ่นที่ 2) คือข้อเสนอ Functions-as-a-Service ยุคถัดไปของ Firebase Cloud Functions (รุ่นที่ 2) สร้างขึ้นบน Cloud Run และ Eventarc นำโครงสร้างพื้นฐานที่ได้รับการปรับปรุงและความครอบคลุมเหตุการณ์ที่กว้างขึ้นมาสู่ Cloud Functions รวมถึง:

  • เวลาประมวลผลคำขอนานขึ้น : เรียกใช้ปริมาณงานคำขอนานขึ้น เช่น การประมวลผลสตรีมข้อมูลขนาดใหญ่จาก Cloud Storage หรือ BigQuery
  • ขนาดอินสแตนซ์ที่ใหญ่ขึ้น : ใช้งานปริมาณงานในหน่วยความจำที่ใหญ่ขึ้น เน้นการประมวลผล และขนานกัน
  • ปรับปรุงการทำงานพร้อมกัน : จัดการคำขอหลายรายการพร้อมกันด้วยอินสแตนซ์ฟังก์ชันเดียวเพื่อลดการเริ่มเย็นและปรับปรุงเวลาแฝง
  • การจัดการการรับส่งข้อมูล : แยกการรับส่งข้อมูลระหว่างการแก้ไขฟังก์ชันต่างๆ หรือย้อนกลับฟังก์ชันกลับไปเป็นเวอร์ชันก่อนหน้า
  • การรวม Eventarc : รองรับทริกเกอร์ Eventarc โดยนำแหล่งที่มาของเหตุการณ์มากกว่า 90 รายการที่รองรับโดย Eventarc ไปยังฟังก์ชันคลาวด์
  • การสนับสนุน CloudEvents ที่กว้างขึ้น : รองรับ CloudEvents ที่เป็นมาตรฐานอุตสาหกรรมในทุกรันไทม์ของภาษา มอบประสบการณ์นักพัฒนาที่สอดคล้องกัน

ดู ตารางเปรียบเทียบ สำหรับรายละเอียด

เนื่องจาก Cloud Functions (รุ่นที่ 2) สร้างขึ้นบน Cloud Run ฟังก์ชัน Cloud (รุ่นที่ 2) จึงแชร์โควต้าทรัพยากรและขีดจำกัดกับ Cloud Run ดู โควต้า

ตารางเปรียบเทียบ

คุณสมบัติ ฟังก์ชั่นคลาวด์ (รุ่นที่ 1) ฟังก์ชั่นคลาวด์ (รุ่นที่ 2)
รีจิสทรีรูปภาพ Container Registry หรือ Artifact Registry การลงทะเบียนสิ่งประดิษฐ์เท่านั้น
หมดเวลาการร้องขอ นานถึง 9 นาที
  • สูงสุด 60 นาทีสำหรับฟังก์ชันที่เรียกใช้ HTTP
  • สูงสุด 9 นาทีสำหรับฟังก์ชันที่กระตุ้นเหตุการณ์
ขนาดอินสแตนซ์ RAM สูงสุด 8GB พร้อม 2 vCPU RAM สูงสุด 16GiB พร้อม 4 vCPU
เห็นพ้องต้องกัน 1 คำขอพร้อมกันต่ออินสแตนซ์ของฟังก์ชัน คำขอพร้อมกันสูงสุด 1,000 รายการต่ออินสแตนซ์ฟังก์ชัน

ราคา

สำหรับข้อมูลราคา โปรดดู แผนการกำหนดราคาของ Firebase

หากคุณใช้ฟังก์ชันคลาวด์ (รุ่นที่ 2) คุณสามารถดูค่าใช้จ่ายที่เกี่ยวข้องกับฟังก์ชันคลาวด์เท่านั้น (รุ่นที่ 2) ได้ดังนี้:

  1. ไปที่ หน้ารายงานการเรียกเก็บเงินบน Cloud ในคอนโซล GCP
  2. หากได้รับแจ้ง ให้เลือกบัญชีสำหรับการเรียกเก็บเงินที่เชื่อมโยงกับโครงการ Google Cloud Platform ของคุณ
  3. ในแผง ตัวกรอง ใต้ Labels ให้เพิ่มตัวกรองป้ายกำกับ ด้วยคีย์ goog-managed-by และค่า cloudfunctions

ข้อจำกัด

Cloud Functions for Firebase (รุ่นที่ 2) ไม่รองรับเหตุการณ์ Analytics

แม้ว่าฟังก์ชันคลาวด์สำหรับ Firebase (รุ่นที่ 2) จะรองรับกิจกรรมการบล็อกการตรวจสอบสิทธิ์ แต่ก็ไม่รองรับกิจกรรมการตรวจสอบสิทธิ์พื้นฐานชุดเดียวกันกับรุ่นที่ 1

อย่างไรก็ตาม เนื่องจากฟังก์ชันรุ่นที่ 1 และรุ่นที่ 2 สามารถอยู่ร่วมกันในไฟล์ต้นฉบับเดียวกัน คุณจึงยังคงพัฒนาและปรับใช้ Analytics และทริกเกอร์การตรวจสอบสิทธิ์พื้นฐานในรุ่นที่ 1 ร่วมกับฟังก์ชันรุ่นที่ 2 ได้