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