Cloud Functions, geliştiricilere Firebase ve Google Cloud etkinliklerine erişim sağlar. Ayrıca, bu etkinliklere yanıt olarak kod çalıştırmak için ölçeklenebilir bilgi işlem gücü sunar. Firebase uygulamalarının benzersiz gereksinimlerini karşılamak için Cloud Functions'ı benzersiz şekillerde kullanması beklenir. Bununla birlikte, tipik kullanım alanları aşağıdakileri kapsayabilir:
- İlgi çekici bir şey olduğunda kullanıcıları bilgilendirin.
- Veritabanı temizleme ve bakımını gerçekleştirin.
- Yoğun görevleri uygulamanızda yerine bulutta çalıştırın.
- Üçüncü taraf hizmetler ve API'lerle entegrasyon
İlgilendiğiniz her kategorinin kullanım alanlarını ve örneklerini inceleyin. Ardından Başlayın eğitimimize veya kimlik doğrulama etkinlikleri, analiz etkinlikleri ve daha fazlası için özel kullanım kılavuzlarımıza gidin.
İlginç bir şey olduğunda kullanıcıları bilgilendirme
Geliştiriciler, kullanıcıların uygulamayla ilgili alakalı bilgilerle etkileşimde kalmasını ve güncel olmasını sağlamak için Cloud Functions'ü kullanabilir. Örneğin, kullanıcıların uygulamadaki etkinliklerini takip etmelerine olanak tanıyan bir uygulamayı düşünün. Bir kullanıcı kendisini başka bir kullanıcının takipçisi olarak her eklediğinde Realtime Database'te bir yazma işlemi gerçekleşir. Ardından bu yazma etkinliği, uygun kullanıcılara yeni takipçi kazandıklarını bildirmek için Firebase Cloud Messaging (FCM) bildirimleri oluşturacak 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
İlginç diğer bildirim kullanım alanları
- Bülten abonelerine onay e-postaları gönderin.
- Kullanıcı kayıt 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şlemleri yapma
Cloud Functions veritabanı etkinlik işleyicisi sayesinde, sistemi istediğiniz durumda tutarak kullanıcı davranışına yanıt olarak Realtime Database veya Cloud Firestore öğesini değiştirebilirsiniz. Ö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 olarak değiştirebilirsiniz). Bu işlem şu şekilde yapılabilir:
- İşlevin veritabanı etkinlik işleyicisi, belirli bir yoldaki yazma etkinliklerini dinler ve ileti metnini içeren etkinlik verilerini alır.
- İşlev, dizeleri büyük harfe dönüştürmek için metni işler.
- İş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'ten temizleyin.
- Firebase veritabanındaki alt öğe sayısını sınırlama
- Realtime Database listesindeki öğelerin sayısını izleyin.
- Realtime Database'deki verileri Google Cloud BigQuery'ye kopyalayın.
- Metni emojiye dönüştürün.
- Veritabanı kayıtları için hesaplanmış meta verileri yönetin.
Yoğun görevleri uygulamanızda yerine bulutta yürütme
Kullanıcının cihazında çalıştırmak yerine, yoğun kaynak kullanan işlemleri (ağır CPU veya ağ bağlantısı) Google Cloud'a aktarmak için Cloud Functions'ten yararlanarak uygulamanızın yanıt verebilirliğini artırabilirsiniz. Örneğin, Cloud Storage'a yüklenen resimleri dinleyen, resmi işlevi çalıştıran örneğe indiren, değiştiren ve Cloud Storage'a geri yükleyen bir işlev yazabilirsiniz. Değişiklikleriniz arasında sharp veya Pillow gibi araçlarla resimleri yeniden boyutlandırma, kırpma ya da dönüştürme yer alabilir.
- Bir resim dosyası Cloud Storage alanına yüklendiğinde işlev tetiklenir.
- İşlev, resmi indirir ve küçük resmini oluşturur.
- İşlev, küçük resim konumunu veritabanına yazar. Böylece istemci uygulama bu konumu bulup kullanabilir.
- İşlev, küçük resmi yeni bir konumda Cloud Storage'e geri yükler.
- Uygulama, küçük resim bağlantısını indirir.
Görsel işleme örneğinin adım adım açıklamalı kılavuzu için Cloud Storage etkinliklerini işleme başlıklı makaleyi inceleyin.
Firebase bulutunda 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 aralıklarla toplayıp özetleyin.
- Beklemedeki bir iş sırasını işleme
Üçüncü taraf hizmetler ve API'lerle entegrasyon
Cloud Functions, web API'lerini çağırıp sunarak uygulamanızın diğer hizmetlerle daha iyi çalışmasını sağlayabilir. Örneğin, geliştirmede ortak çalışma için kullanılan bir uygulama, GitHub gönderimlerini bir çalışma grubu sohbet odasına gönderebilir.
- Kullanıcı, GitHub deposuna gönderim yapar.
- HTTPS işlevi, GitHub webhook API üzerinden tetiklenir.
- İşlev, bir Slack kanalına commit bildirimi gönderir.
Üçüncü taraf hizmetler ve API'lerle entegrasyon için diğer yöntemler
- Yüklenen resimleri analiz etmek ve etiketlemek için Google Cloud Vision API'yi kullanın.
- Google Çeviri'yi kullanarak mesajları çevirin.
- Kullanıcıların oturumunu açmak için özel kimlik doğrulama kullanın.
- Realtime Database yazmalarında bir webhook'a istek gönderin.
- Realtime Database öğelerinde tam metin aramayı etkinleştirin.
- Kullanıcılardan gelen ödemeleri işleme
- Telefon aramalarına ve SMS'lere otomatik yanıtlar oluşturabilirsiniz.
- Google Asistan'ı kullanarak bir chatbot oluşturun.