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

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

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

โควต้าสำหรับ Cloud Functions ครอบคลุม 4 ส่วน ได้แก่

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

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

  • ขีดจำกัดเวลา

    ขีดจำกัดเหล่านี้จะส่งผลต่อระยะเวลาที่ฟังก์ชันทำงานได้

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

    ขีดจำกัดเหล่านี้จะส่งผลต่ออัตราที่คุณเรียกใช้ 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 32GiB ไม่ได้ ต่อฟังก์ชัน
หน่วยความจำสูงสุดของโปรเจ็กต์ ปริมาณหน่วยความจำเป็นไบต์ที่โปรเจ็กต์ใช้ได้ โดยวัดจากผลรวมของหน่วยความจำที่ผู้ใช้ขอในอินสแตนซ์ของฟังก์ชันในช่วงเวลา 1 นาที ขึ้นอยู่กับภูมิภาคที่เลือก ขีดจำกัดนี้อาจสูงกว่าในภูมิภาคที่มีความจุสูงหรือต่ำกว่าในภูมิภาคที่เพิ่งเปิดใหม่ ไม่มี ได้ ต่อโปรเจ็กต์และภูมิภาค
CPU สูงสุดของโปรเจ็กต์ ปริมาณ CPU เป็นมิลลิ vCPU ที่โปรเจ็กต์ใช้ได้ โดยวัดจากผลรวมของ CPU ที่ผู้ใช้ขอในอินสแตนซ์ของฟังก์ชันในช่วงเวลา 1 นาที ขึ้นอยู่กับภูมิภาคที่เลือก ขีดจำกัดนี้อาจสูงกว่าในภูมิภาคที่มีความจุสูงหรือต่ำกว่าในภูมิภาคที่เพิ่งเปิดใหม่ ไม่มี ได้ ต่อโปรเจ็กต์และภูมิภาค

ขีดจำกัดเวลา

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

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

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

ขีดจำกัดของเครือข่าย

ดูข้อมูลเกี่ยวกับ Cloud Functions (รุ่นที่ 2) คำขอเครือข่ายและ ขีดจำกัดแบนด์วิดท์ได้ที่ ขีดจำกัดของเครือข่าย

ขีดจำกัดของเครือข่ายต่อไปนี้มีผลกับ Cloud Functions (รุ่นที่ 1)

  • การเชื่อมต่อขาออกต่อวินาทีต่ออินสแตนซ์: 500 (เพิ่มไม่ได้)
  • การแปลง DNS ขาออกต่อวินาทีต่ออินสแตนซ์: 100 (เพิ่มไม่ได้)
  • แพ็กเก็ตสูงสุดต่อวินาทีต่ออินสแตนซ์: 80,000
  • บิตสูงสุดต่อวินาทีต่ออินสแตนซ์: 100,000,000

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

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

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

ฟังก์ชันพื้นหลังมีขีดจำกัดเพิ่มเติมตามที่อธิบายไว้ด้านล่าง ขีดจำกัดเหล่านี้ไม่มีผลกับฟังก์ชัน HTTP รุ่นที่ 1

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

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

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

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

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

ขีดจำกัดโควต้าสำหรับการทำให้ใช้งานได้โดยใช้ Firebase CLI

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

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

ดูแหล่งอ้างอิง Firebase CLI ด้วย