Cloud Functions for Firebase'in iki sürümü vardır:
- Cloud Functions (2. nesil), işlevlerinizi Cloud Run üzerinde hizmet olarak dağıtır ve Eventarc ile Pub/Sub kullanarak tetiklemenize olanak tanır.
- Sınırlı etkinlik tetikleyicileri ve yapılandırılabilirliği olan işlevlerin orijinal sürümü olan Cloud Functions (1. nesil).
Mümkün olduğunda yeni işlevler için Cloud Functions (2. nesil) seçeneğini belirlemenizi öneririz. Ancak Cloud Functions (1. nesil) cihazları desteklemeye devam etmeyi planlıyoruz.
Bu sayfada, Cloud Functions sürümünde kullanıma sunulan özellikler açıklanmakta ve iki ürün sürümü karşılaştırılmaktadır.
Cloud Functions (2. nesil)
Cloud Functions, Firebase'in yeni nesil Hizmet Olarak İşlev çözümüdür. Cloud Run ve Eventarc üzerine inşa edilen Cloud Functions (2. nesil), Cloud Functions için aşağıdakiler de dahil olmak üzere gelişmiş altyapı ve daha geniş etkinlik kapsamı sunar:
- Cloud Run üzerinde oluşturuldu: Functions, Cloud Build ile oluşturulur ve varsayılan Cloud Run yürütme ortamı kullanılarak Cloud Run hizmetleri olarak dağıtılır. Bu sayede işlevinizi bir Cloud Run hizmeti gibi özelleştirebilirsiniz. Hizmetinizi yapılandırma seçeneklerini (ör. bellek sınırları, ortam değişkenleri vb.) incelemek için Cloud Run belgelerine bakın.
- Daha uzun istek işleme süreleri: Cloud Storage veya BigQuery üzerinden büyük veri akışlarını işleme gibi daha uzun istek iş yüklerini çalıştırın.
- Daha büyük örnek boyutları: Daha büyük bellek içi, yoğun işlem gücü gerektiren ve paralel iş yüklerini çalıştırın.
- Gelişmiş eşzamanlılık: Tek bir işlev örneğiyle birden fazla eşzamanlı isteği işleyerek soğuk başlatmaları en aza indirin ve gecikmeyi azaltın.
- Trafik yönetimi: Trafiği farklı işlev düzeltmeleri arasında bölün veya bir işlevi önceki bir sürüme geri alın.
- Eventarc entegrasyonu: Eventarc tetikleyicileri için yerel destek, Eventarc tarafından desteklenen 90'dan fazla etkinlik kaynağının tümünü Cloud Functions platformuna getirir.
- Daha geniş CloudEvents desteği: Tüm dil çalışma zamanlarında endüstri standardı CloudEvents desteği sunarak tutarlı bir geliştirici deneyimi sağlar.
Ayrıntılar için karşılaştırma tablosuna bakın.
Cloud Functions, işlevleri Cloud Run üzerinde hizmet olarak dağıttığı için Cloud Functions, kaynak kotalarını ve sınırlarını Cloud Run ile paylaşır. Kotalar bölümüne bakın.
Karşılaştırma tablosu
| Özellik | Cloud Functions (1. nesil) | Cloud Functions |
|---|---|---|
| Görüntü kayıt defteri | Container Registry veya Artifact Registry | Yalnızca Artifact Registry |
| İstek zaman aşımı | En fazla 9 dakika |
|
| Hizmet hesabı* | Google App Engine hizmet hesabı (PROJECT_ID@ |
Google Cloud varsayılan Compute hizmet hesabı (PROJECT_NUMBER-compute@developer.gserviceaccount.com) |
| Örnek boyutu | 2 vCPU ile 8 GB'a kadar RAM | 4 vCPU ile 16 GiB'a kadar RAM |
| Eşzamanlılık | İşlev örneği başına 1 eşzamanlı istek | İşlev örneği başına en fazla 1.000 eşzamanlı istek |
* Bu, çalışan bir işlevden Firebase veya Cloud API'lerine erişmek için kullanılan varsayılan hizmet hesabıdır. Bağımsız değişkenler olmadan ilk kullanıma hazırlama yaptığınızda Firebase Admin SDK tarafından kullanılır.
Fiyatlandırma
Fiyatlandırma bilgileri için Firebase fiyatlandırma planları başlıklı makaleyi inceleyin.
Cloud Functions ile ilişkili maliyetlerinizi aşağıdaki şekilde görüntüleyebilirsiniz:
- Google Cloud konsolunda Cloud Billing Raporlar sayfasına gidin.
- İstenirse Google Cloud projenizle ilişkili faturalandırma hesabını seçin.
- Filtreler panelinde, Etiketler bölümünde,
goog-managed-byanahtarı vecloudfunctionsdeğeriyle bir etiket filtresi ekleyin.
Sınırlamalar
Cloud Functions for Firebase (2. nesil), Analytics etkinliklerini desteklemez.
Ancak 1. nesil ve 2. nesil işlevler aynı kaynak dosyasında yan yana bulunabildiğinden, 1. nesildeki Analytics tetikleyicileri 2. nesil işlevlerle birlikte geliştirmeye ve dağıtmaya devam edebilirsiniz.