Cloud Functions, geliştiricilere Firebase ve Google Cloud etkinliklerine erişim imkanı sunar. Ayrıca bu etkinliklere yanıt olarak kod çalıştırmak için ölçeklenebilir bilgi işlem gücü sağlar. Firebase uygulamalarının, benzersiz gereksinimlerini karşılamak için Cloud Functions'ı benzersiz şekillerde kullanması beklense de tipik kullanım alanları şu kategorilere ayrılabilir:
- İlginç bir şey olduğunda kullanıcıları bilgilendirin.
- Veritabanı temizleme ve bakım işlemlerini gerçekleştirme
- Yoğun görevleri uygulamanız yerine bulutta yürütün.
- Üçüncü taraf hizmetleri ve API'lerle entegrasyon
İlginizi çeken her kategori için kullanım alanlarını ve örnekleri inceleyin, ardından Başlangıç eğitimimize veya kimlik doğrulama etkinlikleri, analiz etkinlikleri ve daha fazlası için özel "Nasıl Yapılır?" kılavuzlarımıza gidin.
İlginç bir şey olduğunda kullanıcıları bilgilendirme
Geliştiriciler, kullanıcıların etkileşimde kalmasını ve bir uygulamayla ilgili alakalı bilgilerden haberdar olmasını sağlamak için Cloud Functions kullanabilir. Örneğin, kullanıcıların uygulamadaki etkinliklerini birbirlerinin takip etmesine olanak tanıyan bir uygulama düşünün. Bir kullanıcı kendisini başka bir kullanıcının takipçisi olarak her eklediğinde Realtime Database içinde bir yazma işlemi gerçekleşir. Ardından bu yazma etkinliği, uygun kullanıcılara yeni takipçiler kazandıklarını bildirmek için Firebase Cloud Messaging (FCM) bildirimleri oluşturan bir işlevi tetikleyebilir.

- İşlev, takipçilerin depolandığı Realtime Database yoluna yazma işlemi yapıldığında tetiklenir.
- İşlev, FCM üzerinden gönderilecek bir mesaj oluşturur.
- FCM, bildirim mesajını kullanıcının cihazına gönderir.
Çalışan kodu incelemek için GitHub'daki örnek koda bakın:
- Node.js: fcm-notifications
- Python: fcm-notifications
Diğer ilgi çekici bildirim kullanım alanları
- Bültene abone olan kullanıcılara onay e-postaları gönderme
- Kullanıcı kaydolma işlemini tamamladığında karşılama e-postası gönderin.
- Kullanıcı yeni bir hesap oluşturduğunda SMS onayı gönderme
Veritabanı temizleme ve bakım işlemlerini gerçekleştirme
Cloud Functions veritabanı etkinlik işleme özelliği sayesinde, kullanıcı davranışına yanıt olarak Realtime Database veya Cloud Firestore üzerinde değişiklik yaparak sistemi istediğiniz durumda tutabilirsiniz. Örneğin, yazma etkinliklerini izleyebilir ve kullanıcıların mesajlarındaki belirli dizelerin biçimini değiştirebilirsiniz (ör. tümünü büyük harf yapma). Bunun nasıl işleyebileceğine bakalım:

- İşlevin veritabanı etkinlik işleyicisi, belirli bir yoldaki yazma etkinliklerini dinler ve mesajların metnini içeren etkinlik verilerini alır.
- İşlev, metni işleyerek dizeleri büyük harfe dönüştürür.
- İşlev, güncellenen metni veritabanına geri yazar.
Çalışan kodu incelemek için GitHub'daki örnek koda bakın:
- Node.js: uppercase-rtdb
- Python: uppercase-rtdb
Diğer veritabanı temizleme ve bakım kullanım alanları
- Silinen bir kullanıcının içeriğini Realtime Database hizmetinden tamamen silin.
- Firebase veritabanındaki alt düğüm sayısını sınırlama
- Realtime Database listesindeki öğelerin sayısını izleyin.
- Realtime Database kaynağından Google Cloud BigQuery'ye veri kopyalayın.
- Metni emojiye dönüştürün.
- Veritabanı kayıtları için hesaplanan meta verileri yönetme
Yoğun görevleri uygulamanız yerine bulutta yürütme
Kullanıcının cihazında çalıştırmak yerine yoğun kaynak gerektiren işleri (yoğun CPU veya ağ kullanımı) Google Cloud'a devretmek için Cloud Functions hizmetinden yararlanarak uygulamanızın yanıt verme hızını artırabilirsiniz. Örneğin, Cloud Storage hizmetine resim yüklemelerini dinleyen, resmi işlevi çalıştıran örneğe indiren, değiştiren ve tekrar Cloud Storage hizmetine yükleyen bir işlev yazabilirsiniz. Değişiklikleriniz, sharp veya Pillow gibi araçlarla resimleri yeniden boyutlandırma, kırpma veya dönüştürme işlemlerini içerebilir.

- Cloud Storage konumuna bir resim dosyası yüklendiğinde bir işlev tetiklenir.
- İşlev, resmi indirir ve küçük resim sürümünü oluşturur.
- İşlev, bu küçük resim konumunu veritabanına yazar. Böylece istemci uygulaması bu konumu bulup kullanabilir.
- İşlev, küçük resmi yeni bir konumda Cloud Storage hizmetine geri yükler.
- Uygulama, küçük resim bağlantısını indirir.
Görüntü işleme örneğinin adım adım açıklaması için Cloud Storage etkinliklerini işleme kılavuzuna bakın.
Firebase bulutundaki diğer toplu iş örnekleri
- Kullanılmayan Firebase hesaplarını düzenli olarak silme Node.js | Python.
- Yüklenen resimleri otomatik olarak yedekleme Node.js | Python.
- Kullanıcılara toplu e-posta gönderme
- Verileri düzenli olarak birleştirip özetleyin.
- Bekleyen işlerin sırasını işleme
Üçüncü taraf hizmetleri ve API'lerle entegrasyon
Cloud Functions, web API'lerini çağırıp göstererek uygulamanızın diğer hizmetlerle daha iyi çalışmasına yardımcı olabilir. Örneğin, geliştirme sürecinde ortak çalışma için kullanılan bir uygulama, GitHub commit'lerini bir çalışma grubu sohbet odasına gönderebilir.

- Kullanıcı, GitHub deposuna commit'leri aktarır.
- Bir HTTPS işlevi, GitHub webhook API aracılığıyla tetiklenir.
- İşlev, ekibin Slack kanalına commit ile ilgili bir bildirim gönderir.
Üçüncü taraf hizmetleri ve API'lerle entegrasyonun diğer yolları
- Yüklenen resimleri analiz etmek ve etiketlemek için Google Cloud Vision API'yi kullanın.
- Google Çeviri'yi kullanarak mesajları çevirme
- Kullanıcıların oturum açması için özel kimlik doğrulama kullanın.
- Realtime Database yazma işlemi gerçekleştiğinde bir webhook'a istek gönderin.
- Realtime Database öğelerinde tam metin aramayı etkinleştirin.
- Kullanıcılardan ödeme alma
- Telefon aramalarına ve SMS mesajlarına otomatik yanıtlar oluşturun.
- Google Asistan'ı kullanarak chatbot oluşturma