โควต้าและขีดจำกัด

หน้านี้ให้รายละเอียดขีดจำกัดตามการใช้งานที่ปรับขนาดได้สำหรับ Cloud Functions ตามแผนราคา Blaze แบบจ่ายตามการใช้งาน ขีดจำกัดเหล่านี้ใช้กับโปรเจ็กต์ Firebase ที่ปรับใช้ฟังก์ชันกับสภาพแวดล้อมรันไทม์ Node.js 10

แผน Blaze ให้การเรียกใช้จำนวนมาก เวลาในการประมวลผล และการรับส่งข้อมูลทางอินเทอร์เน็ตโดยไม่คิดค่าใช้จ่าย อย่างไรก็ตาม การปรับใช้ฟังก์ชันมีค่าใช้จ่ายเล็กน้อยสำหรับพื้นที่จัดเก็บที่ใช้สำหรับคอนเทนเนอร์ของฟังก์ชัน ดู คำถามที่พบบ่อย ของ Firebase สำหรับข้อมูลเพิ่มเติม

โควต้าสำหรับ Google Cloud Functions ครอบคลุม 3 ด้าน:

  • ขีดจำกัดของทรัพยากร

    สิ่งเหล่านี้ส่งผลต่อจำนวนทรัพยากรทั้งหมดที่ฟังก์ชันของคุณสามารถใช้ได้

  • จำกัดเวลา

    สิ่งเหล่านี้ส่งผลต่อระยะเวลาที่สิ่งต่าง ๆ สามารถทำงานได้

  • ขีด จำกัด อัตรา

    สิ่งเหล่านี้ส่งผลต่ออัตราที่คุณสามารถเรียกใช้ Cloud Functions API และ/หรืออัตราที่ทรัพยากรสามารถใช้ได้ คุณคิดว่าโควตาอัตราเป็น "ทรัพยากรในช่วงเวลาหนึ่ง"

ข้อจำกัดประเภทต่างๆ ได้อธิบายไว้ในรายละเอียดเพิ่มเติมด้านล่าง ความแตกต่างระหว่างขีดจำกัดสำหรับ Cloud Function (รุ่นที่ 1) และ Cloud Functions (รุ่นที่ 2) จะระบุไว้ในกรณีที่เกี่ยวข้อง

ขีดจำกัดของทรัพยากร

ข้อจำกัดของทรัพยากรส่งผลต่อจำนวนทรัพยากรทั้งหมดที่ฟังก์ชันของคุณสามารถใช้ได้ ขอบเขตภูมิภาคเป็นแบบต่อโปรเจ็กต์ และแต่ละโปรเจ็กต์มีขีดจำกัดของตัวเอง

โควต้า คำอธิบาย จำกัด (รุ่นที่ 1) จำกัด (รุ่นที่ 2) เพิ่มขึ้นได้ ขอบเขต
จำนวนฟังก์ชัน จำนวนฟังก์ชันทั้งหมดที่สามารถใช้งานได้ในแต่ละภูมิภาค 1,000 1,000 ลบจำนวนบริการ Cloud Run ที่ปรับใช้ ไม่ ต่อภูมิภาค
ขนาดการทำให้ใช้งานได้สูงสุด ขนาดสูงสุดของการปรับใช้ฟังก์ชันเดียว 100MB (บีบอัด) สำหรับแหล่งที่มา
500MB (ไม่บีบอัด) สำหรับแหล่งที่มาและโมดูล
ไม่มี ไม่ ต่อฟังก์ชั่น
ขนาดคำขอ HTTP ที่ไม่บีบอัดสูงสุด ข้อมูลที่ส่งไปยังฟังก์ชัน HTTP ในคำขอ HTTP 10MB 32MB ไม่ ต่อการร้องขอ
ขนาดการตอบสนอง HTTP ที่ไม่บีบอัดสูงสุด ข้อมูลที่ส่งจากฟังก์ชัน HTTP ในการตอบกลับ HTTP 10MB 10MB สำหรับการตอบกลับแบบสตรีม
32MB สำหรับการตอบกลับที่ไม่ใช่การสตรีม
ไม่ ต่อการร้องขอ
ขนาดเหตุการณ์สูงสุดสำหรับฟังก์ชันที่ขับเคลื่อนด้วยเหตุการณ์ ข้อมูลที่ส่งในเหตุการณ์ไปยังฟังก์ชันเบื้องหลัง 10MB 512KB สำหรับกิจกรรม Eventarc
10MB สำหรับกิจกรรมดั้งเดิม
ไม่ ต่อเหตุการณ์
หน่วยความจำฟังก์ชันสูงสุด จำนวนหน่วยความจำที่อินสแตนซ์แต่ละฟังก์ชันสามารถใช้ได้ 8GiB 16GiB ไม่ ต่อฟังก์ชั่น

จำกัดเวลา

โควต้า คำอธิบาย จำกัด (รุ่นที่ 1) จำกัด (รุ่นที่ 2) เพิ่มขึ้นได้ ขอบเขต
ระยะเวลาฟังก์ชันสูงสุด ระยะเวลาสูงสุดที่ฟังก์ชันสามารถทำงานได้ก่อนที่จะถูกบังคับยุติ 540 วินาที 60 นาทีสำหรับฟังก์ชัน HTTP
10 นาทีสำหรับฟังก์ชันที่ขับเคลื่อนด้วยเหตุการณ์
ไม่ ต่อการร้องขอ

ขีด จำกัด อัตรา

โควต้า คำอธิบาย จำกัด (รุ่นที่ 1) จำกัด (รุ่นที่ 2) เพิ่มขึ้นได้ ขอบเขต
การเรียก API (อ่าน) การเรียกเพื่ออธิบายหรือแสดงรายการฟังก์ชันผ่าน Cloud Functions API 5000 ต่อ 100 วินาที 1200 ต่อ 60 วินาที เฉพาะรุ่นที่ 1 ต่อโครงการ (รุ่นที่ 1)
ต่อภูมิภาค (รุ่นที่ 2)
การเรียก API (เขียน) การเรียกเพื่อปรับใช้หรือลบฟังก์ชันผ่าน Cloud Functions API 80 ต่อ 100 วินาที 60 ต่อ 60 วินาที อันดับ 1 ต่อโครงการ (รุ่นที่ 1)
ต่อภูมิภาค (รุ่นที่ 2)
การเรียก API (CALL) โทรไปที่ "เรียก" API 16 ต่อ 100 วินาที ไม่มี หมายเลข 2 ต่อโครงการ

ความสามารถในการปรับขนาด

ฟังก์ชันระบบคลาวด์ที่เรียกใช้โดย HTTP จะขยายขนาดอย่างรวดเร็วเพื่อรองรับการรับส่งข้อมูลขาเข้า ในขณะที่ฟังก์ชันพื้นหลังจะค่อยๆ ขยายขนาดมากขึ้น ความสามารถของฟังก์ชันในการขยายขนาดขึ้นอยู่กับปัจจัยสองสามประการ ได้แก่:

  • ระยะเวลาที่ใช้ในการดำเนินการของฟังก์ชันให้เสร็จสมบูรณ์
  • ระยะเวลาที่ใช้ในการเริ่มต้นฟังก์ชันเมื่อ สตาร์ทเย็น
  • ขีดจำกัดอัตรา ตามที่อธิบายไว้ข้างต้น
  • อัตราความผิดพลาดของฟังก์ชันของคุณ
  • ปัจจัยชั่วคราว เช่น โหลดระดับภูมิภาคและความจุของศูนย์ข้อมูล
ฟังก์ชันเบื้องหลังมีขีดจำกัดเพิ่มเติม ตามที่อธิบายด้านล่าง ขีดจำกัดเหล่านี้ใช้ไม่ได้กับ ฟังก์ชัน HTTP

โควต้าเพิ่มเติมสำหรับฟังก์ชันพื้นหลัง

โควต้า คำอธิบาย ขีดจำกัด เพิ่มขึ้นได้ ขอบเขต
จำนวนการเรียกพร้อมกันสูงสุด การเรียกใช้พร้อมกันสูงสุดของฟังก์ชันเดียว
ตัวอย่าง: หากจัดการแต่ละเหตุการณ์ใช้เวลา 100 วินาที อัตราการเรียกใช้จะถูกจำกัดที่ 30 ต่อวินาทีโดยเฉลี่ย
3,000 ไม่ ต่อฟังก์ชั่น
อัตราการเรียกใช้สูงสุด อัตราสูงสุดของเหตุการณ์ที่ถูกจัดการโดยฟังก์ชันเดียว
ตัวอย่าง: หากการจัดการเหตุการณ์ใช้เวลา 100 มิลลิวินาที อัตราการเรียกใช้จะถูกจำกัดที่ 1,000 ต่อวินาที แม้ว่าโดยเฉลี่ยแล้วจะมีการจัดการคำขอเพียง 100 รายการแบบคู่ขนานกัน
1,000 ต่อวินาที ไม่ ต่อฟังก์ชั่น
ขนาดข้อมูลเหตุการณ์พร้อมกันสูงสุด ขนาดรวมสูงสุดของเหตุการณ์ที่เข้ามาเพื่อเรียกใช้ฟังก์ชันเดียวพร้อมกัน
ตัวอย่าง: หากเหตุการณ์มีขนาด 1MB และประมวลผลใช้เวลา 10 วินาที อัตราเฉลี่ยจะเป็น 1 เหตุการณ์ต่อวินาที เนื่องจากเหตุการณ์ที่ 11 จะไม่ถูกประมวลผลจนกว่าการประมวลผล 10 เหตุการณ์แรกจะเสร็จสิ้น
10MB ไม่ ต่อฟังก์ชั่น
ปริมาณงานสูงสุดของเหตุการณ์ที่เข้ามา ปริมาณงานสูงสุดของเหตุการณ์ขาเข้าไปยังฟังก์ชันเดียว
ตัวอย่าง: หากเหตุการณ์มีขนาด 1MB อัตราการเรียกใช้อาจสูงสุด 10 ต่อวินาที แม้ว่าฟังก์ชันจะเสร็จสิ้นภายใน 100 มิลลิวินาที
10MB ต่อวินาที ไม่ ต่อฟังก์ชั่น

เมื่อถึงขีดจำกัดโควต้า

เมื่อฟังก์ชันใช้ทรัพยากรที่จัดสรรทั้งหมด ทรัพยากรจะไม่พร้อมใช้งานจนกว่าโควตาจะรีเฟรชหรือเพิ่มขึ้น ซึ่งอาจหมายความว่าฟังก์ชันของคุณและฟังก์ชันอื่นๆ ทั้งหมดในโปรเจ็กต์เดียวกันจะไม่ทำงานจนกว่าจะถึงเวลานั้น ฟังก์ชันส่งคืนรหัสข้อผิดพลาด HTTP 500 เมื่อหนึ่งในทรัพยากรเกินโควต้าและฟังก์ชันไม่สามารถดำเนินการได้

หากต้องการเพิ่มโควต้าเหนือค่าเริ่มต้นที่แสดงไว้ที่นี่ ให้ไปที่ หน้าโควต้าของ Cloud Functions เลือกโควต้าที่คุณต้องการแก้ไข คลิก แก้ไข โควต้า ระบุข้อมูลผู้ใช้ของคุณหากได้รับแจ้ง และป้อนขีดจำกัดโควต้าใหม่สำหรับแต่ละโควต้าที่คุณเลือก

ขีดจำกัดโควต้าสำหรับการปรับใช้ Firebase CLI

สำหรับแต่ละฟังก์ชันที่ Firebase CLI ปรับใช้ การจำกัดอัตราและเวลาประเภทนี้จะได้รับผลกระทบ:

  • การเรียก API (อ่าน) - 1 ครั้งต่อการปรับใช้ ไม่ว่าจะมีกี่ฟังก์ชันก็ตาม
    • จำกัด: 5000 ต่อ 100 วินาที
  • การเรียก API (WRITE) - 1 การเรียกต่อฟังก์ชัน
    • จำกัด: 80 ต่อ 100 วินาที

ดูเพิ่มเติมที่ การ อ้างอิง Firebase CLI