Check out what’s new from Firebase at Google I/O 2022. Learn more

Cloud Functions ile ne yapabilirim?

Cloud Functions, geliştiricilerin Firebase ve Google Cloud olaylarına erişiminin yanı sıra bu olaylara 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 örnekleri şu alanlarda olabilir:

İlginizi çeken her kategori için kullanım senaryolarını ve örnekleri inceleyin ve ardından Başlangıç eğitimimize veya kimlik doğrulama etkinlikleri , analiz etkinlikleri ve daha fazlası için belirli nasıl yapılır kılavuzlarına geçin. Desteklenen olay türlerinin tam listesi için eventType API başvurusuna bakın.

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

Geliştiriciler, kullanıcıları bir uygulama hakkında ilgili bilgilerle meşgul ve güncel tutmak için Bulut İşlevlerini kullanabilir. Örneğin, kullanıcıların uygulamadaki diğer etkinliklerini 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'de bir yazma gerçekleşir. Ardından bu yazma olayı, uygun kullanıcılara yeni takipçiler kazandıklarını bildirmek için Firebase Bulut Mesajlaşma (FCM) bildirimleri oluşturmak için bir işlevi tetikleyebilir.

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

  1. Bu işlev, takipçilerin depolandığı Gerçek Zamanlı Veritabanı yoluna yazılanları tetikler.
  2. İşlev, FCM aracılığıyla gönderilecek bir mesaj oluşturur.
  3. FCM , bildirim mesajını kullanıcının cihazına gönderir.

Çalışan kodu gözden geçirmek için FCM bildirimlerini gönderme konusuna bakın.

Diğer ilginç bildirim kullanım durumları

Veritabanı temizleme ve bakımını gerçekleştirin

Cloud Functions veritabanı olay işleme ile, sistemi güncel ve temiz tutarak kullanıcı davranışına yanıt olarak Realtime Database'i veya Cloud Firestore'u değiştirebilirsiniz. Örneğin, bir sohbet odası uygulamasında, yazma olaylarını izleyebilir ve kullanıcıların mesajlarından uygunsuz veya saygısız metinleri temizleyebilirsiniz. Bunun nasıl işe yarayabileceği aşağıda açıklanmıştır:

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

  1. İşlevin veritabanı olay işleyicisi, belirli bir yol üzerindeki yazma olaylarını dinler ve herhangi bir sohbet mesajının metnini içeren olay verilerini alır.
  2. İşlev, uygun olmayan dilleri algılamak ve temizlemek için metni işler.
  3. İşlev, güncellenen metni veritabanına geri yazar.

Çalışan kodu gözden geçirmek için Metin Denetleme örneğine bakın. Bu örnek, sohbet mesajlarında uygunsuz dili ve büyük harfli "bağırmayı" temizler.

Diğer veritabanı temizleme ve bakım kullanım örnekleri

Yoğun görevleri uygulamanız yerine bulutta yürütün

Geliştiriciler, bir kullanıcının cihazında çalıştırılması pratik olmayan kaynak yoğun işleri (yoğun CPU veya ağ iletişimi) Google bulutuna boşaltmak için Bulut İşlevlerinden yararlanabilir. Örneğin, Cloud Storage'a görüntü yüklemelerini dinlemek için bir işlev yazabilir, görüntüyü işlevi çalıştıran örneğe indirebilir, değiştirebilir ve tekrar Cloud Storage'a yükleyebilirsiniz. Değişiklikleriniz, resimleri yeniden boyutlandırmayı, kırpmayı veya dönüştürmeyi içerebilir. Bu işi kolaylaştırmak için Cloud Functions ile birlikte kullanılmak üzere ImageMagick komut satırı araçları sağlanmıştır.

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

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

Bir görüntü işleme örneğinin gözden geçirilmesi için bkz. Depolama Olaylarını İşleme.

Firebase bulutundaki diğer toplu iş örnekleri

Üçüncü taraf hizmetler ve API'lerle entegre edin

Cloud Functions, web API'lerini çağırarak ve kullanıma sunarak uygulamanızın diğer hizmetlerle daha iyi çalışmasına yardımcı olabilir. Örneğin, geliştirmede işbirliği 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 diyagram

  1. Bir kullanıcı, taahhütleri bir GitHub deposuna gönderir.
  2. Bir HTTPS işlevi, GitHub web kancası API'si aracılığıyla tetiklenir.
  3. İşlev, bir takım Slack kanalına taahhüt bildirimi gönderir.

Üçüncü taraf hizmetler ve API'lerle entegre olmanın diğer yolları