Cloud Functions ile yapabilecekleriniz

Cloud Functions, geliştiricilere Firebase ve Google Cloud etkinliklerine erişim olanağı 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ı beklenirken tipik kullanım alanları şu şekilde olabilir:

İlginizi çeken her kategori için kullanım alanlarını ve örnekleri inceleyin. Ardından, Başlarken adlı eğitime veya kimlik doğrulama etkinlikleri, analiz etkinlikleri ve daha fazlası için özel nasıl yapılır kılavuzlarına gidin.

İlginç bir şey olduğunda kullanıcıları bilgilendirme

Geliştiriciler, kullanıcıların ilgisini çekmek ve onları bir uygulamayla ilgili bilgilerden haberdar etmek için Cloud Functions kullanabilir. Örneğin, kullanıcıların uygulamadaki etkinliklerini takip etmesine olanak tanıyan bir uygulamayı ele alalım. Bir kullanıcı başka bir kullanıcının takipçisi olduğunda Realtime Database içinde bir yazma işlemi gerçekleşir. Bu yazma etkinliği, uygun kullanıcılara yeni takipçileri olduğunu bildirmek için Firebase Cloud Messaging (FCM) bildirimleri oluşturan bir işlevi tetikleyebilir.

Aşağıda açıklanan uygulama akışını gösteren şema

  1. İşlev, takipçilerin depolandığı Realtime Database yoluna yazma işlemlerinde tetiklenir.
  2. İşlev, FCM üzerinden gönderilecek bir mesaj oluşturur.
  3. FCM, bildirim mesajını kullanıcının cihazına gönderir.

Çalışan kodu incelemek için GitHub'daki örnek koda bakın:

Diğer ilginç bildirim kullanım alanları

  • Bültene abone olan kullanıcılara onay e-postaları gönderin.
  • Kullanıcı kaydolma işlemini tamamladığında karşılama e-postası gönderin.
  • Kullanıcı yeni hesap oluşturduğunda SMS onayı gönderin.

Veritabanı temizleme ve bakım işlemlerini gerçekleştirme

Cloud Functions veritabanı etkinlik işleme özelliğiyle, kullanıcı davranışlarına yanıt olarak Realtime Database veya Cloud Firestore öğelerini değiştirebilir, böylece sistemi istediğiniz durumda tutabilirsiniz. Örneğin, yazma etkinliklerini izleyebilir ve kullanıcıların iletilerindeki belirli dizelerin biçimini değiştirebilirsiniz (ör. tümü büyük harf olacak şekilde). Bu özellik şu şekilde çalışır:

Aşağıda açıklanan uygulama akışını gösteren şema

  1. İşlevin veritabanı etkinlik işleyicisi, belirli bir yoldaki yazma etkinliklerini dinler ve iletilerin metnini içeren etkinlik verilerini alır.
  2. Bu işlev, metni işleyerek dizeleri büyük harfe dönüştürür.
  3. İşlev, güncellenen metni veritabanına geri yazar.

Çalışan kodu incelemek için GitHub'daki örnek koda bakın:

Diğer veritabanı temizleme ve bakım kullanım alanları

  • Silinen bir kullanıcının içeriğini Realtime Database'dan tamamen silin.
  • Firebase veritabanındaki alt düğümlerin sayısını sınırlayın.
  • Realtime Database listesindeki öğelerin sayısını izleyin.
  • Realtime Database'dan Google Cloud BigQuery'ye veri kopyalama
  • Metni emojiye dönüştürme
  • Veritabanı kayıtları için hesaplanmış meta verileri yönetme.

Yoğun görevleri uygulamanızda değil, bulutta yürütme

Uygulamanızın yanıt verme hızını artırmak için Cloud Functions'dan yararlanarak kaynak yoğun (CPU veya ağ kullanımı yüksek) işlemleri kullanıcının cihazında çalıştırmak yerine Google Cloud'a yükleyebilirsiniz. Örneğin, Cloud Storage'a yüklenen resimleri dinlemek, resmi işlevi çalıştıran örneğe indirmek, resmi değiştirmek ve tekrar Cloud Storage'a yüklemek için bir işlev yazabilirsiniz. Değişiklikleriniz arasında sharp veya Pillow gibi araçlarla resimleri yeniden boyutlandırma, kırpma veya dönüştürme yer alabilir.

Aşağıda açıklanan uygulama akışını gösteren şema

  1. Bir resim dosyası Cloud Storage'ya yüklendiğinde bir işlev tetiklenir.
  2. İşlev, resmi indirir ve küçük resim sürümünü oluşturur.
  3. Bu işlev, küçük resim konumunu veritabanına yazar. Böylece bir istemci uygulaması, küçük resmi bulup kullanabilir.
  4. Bu işlev, küçük resmi yeni bir konumda Cloud Storage'ya geri yükler.
  5. Uygulama, küçük resim bağlantısını indirir.

Görsel işleme örneğinin adım adım açıklaması için Cloud Storage etkinliklerini işleme rehberine bakın.

Firebase Cloud'daki 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 toplayıp özetleyin.
  • Beklemedeki işlerin sırasını işleme

Üçüncü taraf hizmetler ve API'lerle entegrasyon

Cloud Functions, web API'lerini çağırıp kullanıma sunarak uygulamanızın diğer hizmetlerle daha iyi çalışmasına yardımcı olabilir. Örneğin, geliştirme üzerinde ortak çalışma için kullanılan bir uygulama, GitHub taahhütlerini bir çalışma grubu sohbet odasına gönderebilir.

Aşağıda açıklanan uygulama akışını gösteren şema

  1. Kullanıcı, GitHub deposuna commit gönderir.
  2. HTTPS işlevi, GitHub webhook API aracılığıyla tetiklenir.
  3. Bu işlev, commit ile ilgili bildirimi bir ekip Slack kanalına gönderir.

Üçüncü taraf hizmetler 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 oturumunu açmak için özel kimlik doğrulama özelliğini kullanın.
  • Realtime Database yazma işleminde bir webhook'a istek gönderir.
  • Realtime Database öğelerinde tam metin aramayı etkinleştirin.
  • Kullanıcılardan gelen ödemeleri işleme
  • Telefon aramalarına ve SMS mesajlarına otomatik yanıtlar oluşturma
  • Google Asistan'ı kullanarak chatbot oluşturma