การเปรียบเทียบเวอร์ชัน Cloud Functions

Cloud Functions มีผลิตภัณฑ์ 2 เวอร์ชัน ได้แก่ Cloud Functions (รุ่นที่ 1) เวอร์ชันเดิม และ Cloud Functions (รุ่นที่ 2) เวอร์ชันใหม่ที่สร้างขึ้น Cloud Run และ Eventarc ในการจัดทำชุดฟีเจอร์ขั้นสูง ช่วงเวลานี้ หน้านี้อธิบายถึงฟีเจอร์ใหม่ใน Cloud Functions (รุ่นที่ 2) และ จะให้การเปรียบเทียบผลิตภัณฑ์ทั้งสองเวอร์ชัน

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

ใหม่ใน Cloud Functions (รุ่นที่ 2)

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

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

ดูรายละเอียดในตารางเปรียบเทียบ

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

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

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

ราคา

หากต้องการทราบข้อมูลเกี่ยวกับราคา โปรดดู แพ็กเกจราคา Firebase

หากใช้ Cloud Functions (รุ่นที่ 2) คุณจะดูค่าใช้จ่ายที่เชื่อมโยงกับได้ Cloud Functions (รุ่นที่ 2) เท่านั้น ดังนี้

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

ข้อจำกัด

Cloud Functions for Firebase (รุ่นที่ 2) ไม่รองรับ Analytics กิจกรรม

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

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