หน้านี้แสดงรายละเอียดขีดจํากัดแบบปรับขนาดได้ซึ่งอิงตามการใช้งานสําหรับ Cloud Functions ตามแพ็กเกจราคาแบบชําระเงินตามการใช้งานของ Blaze ขีดจํากัดเหล่านี้มีผลกับโปรเจ็กต์ Firebase ที่ทําให้ฟังก์ชันทํางานในสภาพแวดล้อมรันไทม์ Node.js 10
แพ็กเกจ Blaze มีจํานวนการเรียกใช้ เวลาประมวลผล และการรับส่งข้อมูลทางอินเทอร์เน็ตแบบไม่จํากัดโดยไม่มีค่าใช้จ่าย อย่างไรก็ตาม การนำฟังก์ชันไปใช้งานจะมีการเรียกเก็บเงินในอัตราเล็กน้อยสำหรับพื้นที่เก็บข้อมูลที่ใช้สำหรับคอนเทนเนอร์ของฟังก์ชัน ดูข้อมูลเพิ่มเติมได้ที่คําถามที่พบบ่อยของ Firebase
โควต้าสำหรับ Firebase ครอบคลุม 4 ด้าน ได้แก่
ขีดจำกัดทรัพยากร
ซึ่งส่งผลต่อจํานวนทรัพยากรทั้งหมดที่ฟังก์ชันของคุณใช้ได้
ขีดจำกัดเวลา
ซึ่งส่งผลต่อระยะเวลาที่ระบบจะทํางาน
ขีดจำกัดอัตรา
ซึ่งจะส่งผลต่ออัตราที่คุณเรียกใช้ Firebase API ได้เพื่อจัดการฟังก์ชัน
ขีดจำกัดของเครือข่าย
ซึ่งจะส่งผลต่อการเชื่อมต่อขาออกและขีดจํากัดอินสแตนซ์
รายละเอียดเพิ่มเติมเกี่ยวกับขีดจํากัดประเภทต่างๆ มีดังนี้ ความแตกต่างระหว่างขีดจำกัดของ Firebase (รุ่นที่ 1) กับ Firebase (รุ่นที่ 2) จะระบุไว้ในส่วนที่เกี่ยวข้อง
ขีดจำกัดทรัพยากร
ขีดจํากัดทรัพยากรจะส่งผลต่อจํานวนทรัพยากรทั้งหมดที่ฟังก์ชันของคุณใช้ได้ ขอบเขตระดับภูมิภาคจะกำหนดตามโปรเจ็กต์ และแต่ละโปรเจ็กต์จะมีขีดจำกัดของตนเอง
โควต้า | คำอธิบาย | Limit (รุ่นที่ 1) | Limit (รุ่นที่ 2) | เพิ่มได้ | ขอบเขต |
---|---|---|---|---|---|
จํานวนฟังก์ชัน | จํานวนฟังก์ชันทั้งหมดที่นําไปใช้งานได้ต่อภูมิภาค | 1,000 ราย | 1,000 ลบด้วยจํานวนบริการ Cloud Run ที่ติดตั้งใช้งาน | ไม่ | ต่อภูมิภาค |
ขนาดการทําให้ใช้งานได้สูงสุด | ขนาดสูงสุดของการใช้งานฟังก์ชันเดียว | 100 MB (บีบอัด) สำหรับแหล่งที่มา 500MB (ไม่บีบอัด) สำหรับแหล่งที่มาและโมดูล |
ไม่มี | ไม่ | ต่อฟังก์ชัน |
ขนาดสูงสุดของคำขอ HTTP ที่ไม่ได้บีบอัด | ข้อมูลที่ส่งไปยัง HTTP Functions ในคำขอ HTTP | 10MB | 32MB | ไม่ | ต่อการเรียกใช้ |
ขนาดการตอบกลับ HTTP แบบไม่บีบอัดสูงสุด | ข้อมูลที่ส่งจากฟังก์ชัน HTTP ในการตอบกลับ HTTP | 10MB | 10 MB สําหรับการสตรีมคําตอบ 32 MB สําหรับคําตอบแบบไม่สตรีม |
ไม่ | ต่อการเรียกใช้ |
ขนาดเหตุการณ์สูงสุดสําหรับฟังก์ชันที่ทํางานตามเหตุการณ์ | ข้อมูลที่ส่งในเหตุการณ์ไปยังฟังก์ชันเบื้องหลัง | 10MB | 512 KB สำหรับเหตุการณ์ Eventarc 10 MB สำหรับเหตุการณ์เดิม |
ไม่ | ต่อเหตุการณ์ |
หน่วยความจําสูงสุดของฟังก์ชัน | จำนวนหน่วยความจำที่อินสแตนซ์ฟังก์ชันแต่ละรายการใช้ได้ | 8GiB | 32GiB | ไม่ | ต่อฟังก์ชัน |
หน่วยความจําสูงสุดของโปรเจ็กต์ | จำนวนหน่วยความจำ (เป็น By) ที่โปรเจ็กต์ใช้ได้ ซึ่งวัดจากผลรวมทั้งหมดของหน่วยความจําที่ผู้ใช้ขอในอินสแตนซ์ฟังก์ชันในช่วง 1 นาที | ขึ้นอยู่กับภูมิภาคที่เลือก ขีดจํากัดนี้อาจสูงกว่าในภูมิภาคที่มีขีดจํากัดสูง หรือต่ำกว่าในภูมิภาคที่เพิ่งเปิด | ไม่มี | ใช่ | ต่อโปรเจ็กต์และภูมิภาค |
CPU สูงสุดของโปรเจ็กต์ | จำนวน CPU (เป็น vCPU หน่วยมิลลิ) ที่โปรเจ็กต์หนึ่งใช้ได้ ซึ่งวัดจากผลรวมทั้งหมดของ CPU ที่ผู้ใช้ขอในอินสแตนซ์ฟังก์ชันในช่วง 1 นาที | ขึ้นอยู่กับภูมิภาคที่เลือก ขีดจํากัดนี้อาจสูงกว่าในภูมิภาคที่มีขีดจํากัดสูง หรือต่ำกว่าในภูมิภาคที่เพิ่งเปิด | ไม่มี | ใช่ | ต่อโปรเจ็กต์และภูมิภาค |
ขีดจำกัดเวลา
โควต้า | คำอธิบาย | Limit (รุ่นที่ 1) | Limit (รุ่นที่ 2) | เพิ่มได้ | ขอบเขต |
---|---|---|---|---|---|
ระยะเวลาสูงสุดของฟังก์ชัน | ระยะเวลาสูงสุดที่ฟังก์ชันจะทํางานได้ก่อนที่จะสิ้นสุดลง | 540 วินาที | 60 นาทีสําหรับฟังก์ชัน HTTP 9 นาทีสําหรับฟังก์ชันที่ทํางานตามเหตุการณ์ |
ไม่ | ต่อการเรียกใช้ |
ขีดจำกัดอัตรา
โควต้า | คำอธิบาย | Limit (รุ่นที่ 1) | Limit (รุ่นที่ 2) | เพิ่มได้ | ขอบเขต |
---|---|---|---|---|---|
การเรียก API (อ่าน) | การเรียกให้อธิบายหรือแสดงรายการฟังก์ชันผ่าน Firebase API | 5,000 ต่อ 100 วินาที | 1200 ต่อ 60 วินาที | สำหรับรุ่นที่ 1 เท่านั้น | ต่อโปรเจ็กต์ (รุ่นที่ 1) ต่อภูมิภาค (รุ่นที่ 2) |
การเรียก API (เขียน) | การเรียกใช้เพื่อทำให้ฟังก์ชันใช้งานได้หรือลบฟังก์ชันผ่าน Firebase API | 80 ต่อ 100 วินาที | 60 ต่อ 60 วินาที | ไม่ 1 | ต่อโปรเจ็กต์ (รุ่นที่ 1) ต่อภูมิภาค (รุ่นที่ 2) |
การเรียก API (CALL) | การเรียก API "call" | 16 ครั้งต่อ 100 วินาที | ไม่มี | ไม่ 2 | ต่อโปรเจ็กต์ |
ขีดจํากัดของเครือข่าย
ดูข้อมูลเกี่ยวกับคำขอเครือข่าย Firebase (รุ่นที่ 2) และขีดจำกัดแบนด์วิดท์ได้ที่ขีดจำกัดของเครือข่าย
ขีดจำกัดของเครือข่ายต่อไปนี้มีผลกับ Firebase (รุ่นที่ 1)
- การเชื่อมต่อขาออกต่อวินาทีต่ออินสแตนซ์: 500 (เพิ่มไม่ได้)
- การแปลง DNS ขาออกต่อวินาทีต่ออินสแตนซ์: 100 (เพิ่มไม่ได้)
ความสามารถในการปรับขนาด
Firebase ที่เรียกใช้โดย HTTP จะปรับขนาดขึ้นอย่างรวดเร็วเพื่อจัดการกับการเข้าชมขาเข้า ส่วนฟังก์ชันที่ทำงานอยู่เบื้องหลังจะปรับขนาดอย่างค่อยเป็นค่อยไป ความสามารถในการปรับขนาดของฟังก์ชันขึ้นอยู่กับปัจจัยหลายประการ ซึ่งรวมถึง
- ระยะเวลาที่ใช้ในการเรียกใช้ฟังก์ชันจนเสร็จสมบูรณ์ (โดยทั่วไปแล้ว ฟังก์ชันที่ทำงานไม่นานจะปรับขนาดเพื่อจัดการคําขอพร้อมกันได้มากขึ้น)
- ระยะเวลาที่ใช้ในการเริ่มต้นฟังก์ชันในCold Start
- อัตราการเกิดข้อผิดพลาดของฟังก์ชัน
ปัจจัยชั่วคราว เช่น ภาระงานระดับภูมิภาคและความจุของศูนย์ข้อมูล
โควต้าเพิ่มเติมสำหรับฟังก์ชันการทำงานเบื้องหลัง
โควต้า | คำอธิบาย | ขีดจำกัด | เพิ่มได้ | ขอบเขต | เวอร์ชันผลิตภัณฑ์ |
---|---|---|---|---|---|
จำนวนการเรียกใช้พร้อมกันสูงสุด | การเรียกใช้ฟังก์ชันเดียวพร้อมกันสูงสุด ตัวอย่าง: หากการจัดการแต่ละเหตุการณ์ใช้เวลา 100 วินาที อัตราการเรียกใช้จะจำกัดอยู่ที่ 30 ครั้งต่อวินาทีโดยเฉลี่ย |
3,000 | ใช่ | ต่อฟังก์ชัน | รุ่นที่ 1 เท่านั้น |
อัตราการเรียกใช้สูงสุด | อัตราสูงสุดของเหตุการณ์ที่จัดการโดยฟังก์ชันเดียว ตัวอย่าง: หากการจัดการเหตุการณ์ใช้เวลา 100 มิลลิวินาที อัตราการเรียกใช้จะจํากัดอยู่ที่ 1,000 ครั้งต่อวินาที แม้ว่าจะมีการจัดการคําขอแบบขนานกันโดยเฉลี่ยเพียง 100 รายการก็ตาม |
1,000 ต่อวินาที | ไม่ | ต่อฟังก์ชัน | รุ่นที่ 1 เท่านั้น |
ขนาดข้อมูลเหตุการณ์สูงสุดพร้อมกัน | ขนาดรวมสูงสุดของเหตุการณ์ขาเข้าที่มีการเรียกใช้ฟังก์ชันเดียวพร้อมกัน ตัวอย่าง: หากเหตุการณ์มีขนาด 1 MB และการประมวลผลใช้เวลา 10 วินาที อัตราเฉลี่ยจะเป็น 1 เหตุการณ์ต่อวินาที เนื่องจากระบบจะไม่ประมวลผลเหตุการณ์ที่ 11 จนกว่าการประมวลผลเหตุการณ์ใดเหตุการณ์หนึ่งจาก 10 เหตุการณ์แรกจะเสร็จสิ้น |
10MB | ไม่ | ต่อฟังก์ชัน | รุ่นที่ 1 และ 2 |
อัตราการส่งข้อมูลสูงสุดของเหตุการณ์ขาเข้า | อัตราการส่งข้อมูลสูงสุดของเหตุการณ์ขาเข้าไปยังฟังก์ชันเดียว ตัวอย่าง: หากเหตุการณ์มีขนาด 1MB อัตราเรียกใช้จะสูงสุด 10 ครั้งต่อวินาที แม้ว่าฟังก์ชันจะทำงานเสร็จภายใน 100 มิลลิวินาทีก็ตาม |
10 MB ต่อวินาที | ไม่ | ต่อฟังก์ชัน | รุ่นที่ 1 และ 2 |
เมื่อใช้โควต้าถึงขีดจํากัด
เมื่อฟังก์ชันใช้ทรัพยากรที่จัดสรรทั้งหมด ทรัพยากรดังกล่าวจะใช้งานไม่ได้จนกว่าจะมีการรีเฟรชหรือเพิ่มโควต้า ซึ่งอาจหมายความว่าฟังก์ชันและฟังก์ชันอื่นๆ ทั้งหมดในโปรเจ็กต์เดียวกันจะไม่ทำงานจนกว่าจะถึงวันดังกล่าว ฟังก์ชันจะแสดงรหัสข้อผิดพลาด HTTP 500 เมื่อทรัพยากรรายการใดรายการหนึ่งมีจำนวนเกินโควต้าและฟังก์ชันไม่สามารถดำเนินการได้
หากต้องการเพิ่มโควต้าให้มากกว่าค่าเริ่มต้นที่แสดงที่นี่ ให้ไปที่ Firebaseหน้าโควต้า เลือกโควต้าที่ต้องการแก้ไข คลิกแก้ไขโควต้า ระบุข้อมูลผู้ใช้หากได้รับข้อความแจ้ง แล้วป้อนขีดจํากัดโควต้าใหม่สําหรับโควต้าแต่ละรายการที่เลือก
ขีดจํากัดโควต้าสําหรับการทําให้ Firebase CLI ใช้งานได้
อัตราและขีดจำกัดเวลาประเภทต่อไปนี้จะได้รับผลกระทบสำหรับแต่ละฟังก์ชันที่ Firebase CLI ติดตั้งใช้งาน
- การเรียก API (อ่าน) - การเรียก 1 ครั้งต่อการติดตั้งใช้งาน ไม่ว่าจะมีฟังก์ชันกี่รายการก็ตาม
- จำกัด: 5,000 ครั้งต่อ 100 วินาที
- การเรียก API (เขียน) - 1 ครั้งต่อฟังก์ชัน
- จำกัด: 80 ครั้งต่อ 100 วินาที
โปรดดูแหล่งอ้างอิง Firebase CLI ด้วย