获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

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

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

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

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

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

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

  • จำกัด เวลา

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

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

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

ขีดจำกัดประเภทต่างๆ มีรายละเอียดเพิ่มเติมด้านล่าง ความแตกต่างระหว่างขีดจำกัดสำหรับ Cloud Functions (รุ่นที่ 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 5,000 ต่อ 100 วินาที 1200 ต่อ 60 วินาที สำหรับรุ่นที่ 1 เท่านั้น ต่อโครงการ (รุ่นที่ 1)
ต่อภูมิภาค (รุ่นที่ 2)
การเรียก API (WRITE) การเรียกใช้เพื่อปรับใช้หรือลบฟังก์ชันผ่าน 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 (READ) - 1 การเรียกใช้ต่อการปรับใช้ ไม่ว่าจะมีกี่ฟังก์ชันก็ตาม
    • ขีดจำกัด: 5,000 ต่อ 100 วินาที
  • การเรียก API (WRITE) - 1 การเรียกใช้ต่อฟังก์ชัน
    • ขีดจำกัด: 80 ต่อ 100 วินาที

โปรดดู ข้อมูลอ้างอิง Firebase CLI