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 uygulamada birbirlerinin etkinliklerini takip etmesine 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'de 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üyle büyük harf olarak değiştirebilirsiniz). Bu işlem şu şekilde yapılabilir:
- İşlevin veritabanı etkinlik işleyicisi, belirli bir yolda 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 yararlanabilir, böylece uygulamanızın yanıt verebilirliğini artırabilirsiniz. Örneğin, Cloud Storage'a yüklenen resimleri dinlemek, resmi işlevi çalıştıran örneğe indirmek, değiştirmek ve Cloud Storage'a geri 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 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 resmin konumunu veritabanına yazar. Böylece istemci uygulama, küçük resmi bulup kullanabilir.
- İşlev, küçük resmi Cloud Storage'e yeni bir konumda yeniden 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ın ve özetleyin.
- Beklemedeki bir iş kuyruğunu 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 taahhütlerini bir iş grubu sohbet odasına gönderebilir.
- Kullanıcı, GitHub deposuna gönderim yapar.
- HTTPS işlevi, GitHub webhook API üzerinden tetiklenir.
- İşlev, bir ekip 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.