Kuota dan batas

Halaman ini menjelaskan batas skalabel berbasis penggunaan untuk Cloud Functions berdasarkan paket harga bayar sesuai penggunaan Blaze. Batasan ini berlaku untuk project Firebase yang men-deploy fungsi di lingkungan runtime Node.js 10.

Paket Blaze menyediakan pemanggilan fungsi, waktu komputasi, dan traffic internet gratis yang melimpah. Namun, deployment fungsi akan menimbulkan sedikit biaya untuk ruang penyimpanan yang digunakan bagi container fungsi. Lihat FAQ Firebase untuk mengetahui informasi selengkapnya.

Kuota untuk Google Cloud Functions mencakup 3 area:

  • Batas Resource

    Batas ini memengaruhi jumlah total resource yang dapat digunakan oleh fungsi Anda.

  • Batas Waktu

    Batas ini memengaruhi berapa lama operasi bisa berjalan.

  • Batas Kapasitas

    Batas ini memengaruhi tingkat panggilan ke Cloud Functions API untuk mengelola fungsi Anda.

Jenis-jenis batas tersebut dijelaskan secara lebih mendetail di bawah ini. Perbedaan antara batas untuk Cloud Functions (generasi ke-1) dan Cloud Functions (generasi ke-2) dinyatakan, jika ada.

Batas Resource

Batas resource memengaruhi jumlah total resource yang dapat digunakan oleh fungsi Anda. Cakupan regional bersifat per project, dan setiap project memiliki batasnya sendiri.

Kuota Deskripsi Batas (generasi ke-1) Batas (generasi ke-2) Bisa ditingkatkan Cakupan
Jumlah fungsi Jumlah total fungsi yang dapat di-deploy per region 1.000 1.000 dikurangi jumlah layanan Cloud Run yang di-deploy Tidak per region
Ukuran deployment maksimum Ukuran maksimum deployment fungsi tunggal 100 MB (terkompresi) untuk sumber.
500 MB (tidak terkompresi) untuk sumber dan modul.
T/A Tidak per fungsi
Ukuran permintaan HTTP maksimal yang tidak dikompresi Data yang dikirim ke fungsi HTTP dalam permintaan HTTP 10 MB 32 MB Tidak per pemanggilan
Ukuran respons HTTP maksimal yang tidak dikompresi Data yang dikirim dari fungsi HTTP dalam respons HTTP 10 MB 10 MB untuk respons streaming.
32 MB untuk respons non-streaming.
Tidak per pemanggilan
Ukuran peristiwa maksimum untuk fungsi yang dipicu oleh peristiwa Data yang dikirim dalam peristiwa ke fungsi latar belakang 10 MB 512 KB untuk peristiwa Eventarc.
10 MB untuk peristiwa lama.
Tidak per peristiwa
Memori fungsi maks Jumlah memori yang dapat digunakan oleh setiap instance fungsi 8 GiB 16 GiB Tidak per fungsi

Batas Waktu

Kuota Deskripsi Batas (generasi ke-1) Batas (generasi ke-2) Bisa ditingkatkan Cakupan
Durasi fungsi maksimum Durasi maksimum sebuah fungsi dapat dijalankan sebelum diakhiri secara paksa 540 detik 60 menit untuk fungsi HTTP.
10 menit untuk fungsi yang dipicu oleh peristiwa.
Tidak per pemanggilan

Batas Kapasitas

Kuota Deskripsi Batas (generasi ke-1) Batas (generasi ke-2) Bisa ditingkatkan Cakupan
Panggilan API (BACA) Panggilan untuk mendeskripsikan atau membuat daftar fungsi melalui Cloud Functions API 5.000 per 100 detik 1.200 per 60 detik Hanya untuk generasi ke-1 per project (generasi ke-1)
per region (generasi ke-2)
Panggilan API (TULIS) Panggilan untuk men-deploy atau menghapus fungsi melalui Cloud Functions API 80 per 100 detik 60 per 60 detik Tidak 1 per project (generasi ke-1)
per region (generasi ke-2)
Panggilan API (PANGGIL) Panggilan ke API "panggilan" 16 per 100 detik T/A Tidak 2 per project

Skalabilitas

Cloud Functions yang dipanggil oleh HTTP akan mengalami peningkatan skala dengan cepat untuk menangani traffic yang masuk, sedangkan fungsi latar belakang akan menyesuaikan skala secara bertahap. Kemampuan suatu fungsi untuk meningkatkan skala ditentukan oleh beberapa faktor, termasuk di antaranya:

  • Jumlah waktu yang diperlukan agar eksekusi fungsi dapat diselesaikan (fungsi jangka pendek umumnya dapat ditingkatkan skalanya untuk menangani permintaan serentak lainnya).
  • Jumlah waktu yang diperlukan agar fungsi dimulai saat melakukan cold start.
  • Tingkat error fungsi Anda.
  • Faktor transien, seperti beban regional dan kapasitas pusat data.

Fungsi latar belakang memiliki batas tambahan, seperti yang dijelaskan di bawah ini. Batasan ini tidak berlaku untuk fungsi HTTP generasi ke-1.

Kuota tambahan untuk fungsi latar belakang

Kuota Deskripsi Batas Bisa ditingkatkan Cakupan Versi produk
Pemanggilan serentak maks. Pemanggilan serentak maksimum suatu fungsi tunggal
Contoh: jika penanganan setiap peristiwa membutuhkan waktu 100 detik, tingkat pemanggilan akan dibatasi ke 30 per detik secara rata-rata
3.000 Ya per fungsi Hanya generasi ke-1
Tingkat pemanggilan maks. Tingkat maksimum peristiwa yang ditangani oleh suatu fungsi tunggal
Contoh: jika penanganan suatu peristiwa membutuhkan waktu 100 mdtk, tingkat pemanggilan akan dibatasi ke 1.000 per detik sekalipun secara rata-rata hanya ada 100 permintaan yang ditangani secara paralel
1.000 per detik Tidak per fungsi Hanya generasi ke-1
Ukuran data peristiwa serentak maks. Ukuran total maksimum peristiwa masuk ke pemanggilan serentak suatu fungsi tunggal
Contoh: jika peristiwa berukuran 1 MB dan pemrosesannya membutuhkan waktu 10 detik, maka tingkat rata-ratanya adalah 1 peristiwa per detik, karena peristiwa ke-11 tidak akan diproses hingga pemrosesan salah satu dari 10 peristiwa pertama berhasil
10 MB Tidak per fungsi generasi ke-1 dan generasi ke-2
Throughput peristiwa masuk maks. Throughput maksimum peristiwa masuk ke fungsi tunggal
Contoh: jika peristiwa berukuran 1 MB, maka tingkat pemanggilan maksimumnya adalah 10 per detik, meskipun fungsi selesai dalam 100 mdtk
10 MB per detik Tidak per fungsi generasi ke-1 dan generasi ke-2

Jika batas kuota tercapai

Jika sebuah fungsi menghabiskan semua resource yang dialokasikan, resource tersebut tidak akan tersedia lagi sampai kuotanya dimuat ulang atau ditingkatkan. Hal ini dapat berarti bahwa fungsi Anda dan semua fungsi lain dalam project yang sama tidak akan berjalan hingga waktu tersebut. Fungsi akan menampilkan kode error HTTP 500 ketika salah satu resource melebihi kuota dan fungsi tidak dapat berjalan.

Untuk meningkatkan kuota di atas batas default yang tercantum di sini, buka Halaman Kuota Cloud Functions, pilih kuota yang ingin diubah, klik EDIT QUOTAS, masukkan informasi pengguna jika diminta, lalu masukkan batas kuota baru untuk setiap kuota yang Anda pilih.

Batas kuota untuk deployment Firebase CLI

Untuk setiap fungsi yang di-deploy oleh Firebase CLI, jenis batas kapasitas dan batas waktu berikut akan terkena dampak:

  • Panggilan API (BACA) - 1 panggilan per deployment, berapa pun jumlah fungsi
    • Batas: 5.000 per 100 detik
  • Panggilan API (TULIS) - 1 panggilan per fungsi
    • Batas: 80 per 100 detik

Baca juga referensi Firebase CLI.