Cloud Functions for Firebase

Cloud Functions for Firebase एक सर्वरलेस फ़्रेमवर्क है. इसकी मदद से, बैकग्राउंड इवेंट, एचटीटीपीएस अनुरोध, Admin SDK या Cloud Scheduler जॉब से ट्रिगर होने वाले इवेंट के जवाब में, बैकएंड कोड अपने-आप चलाया जा सकता है. आपका JavaScript, TypeScript या Python कोड, Google Cloud के इंफ़्रास्ट्रक्चर पर सेव होता है. साथ ही, यह मैनेज किए जा रहे एनवायरमेंट में काम करता है. आपको अपने सर्वर को मैनेज और स्केल करने की ज़रूरत नहीं है.

शुरू करें इस्तेमाल के उदाहरण




शुरू करें.

मुख्य सुविधाएं

Firebase की सुविधाओं को इंटिग्रेट करता है और Firebase को Google Cloud से कनेक्ट करता है

आपके लिखे गए फ़ंक्शन, Firebase और Google Cloud की अलग-अलग सुविधाओं से जनरेट होने वाले इवेंट के लिए काम कर सकते हैं. जैसे, Firebase Authentication ट्रिगर से लेकर Cloud Storage ट्रिगर तक.

Cloud Functions के साथ Admin SDK का इस्तेमाल करके, Firebase की सभी सुविधाओं को इंटिग्रेट करें. साथ ही, अपने वेबहुक लिखकर तीसरे पक्ष की सेवाओं के साथ इंटिग्रेट करें. Cloud Functions छोटे-मोटे बदलाव वाले कोड को कम करता है. इससे, अपने फ़ंक्शन में Firebase और Google Cloud का इस्तेमाल करना आसान हो जाता है.
कोई रखरखाव नहीं कमांड लाइन से एक कमांड देकर, अपने JavaScript, TypeScript या Python कोड को हमारे सर्वर पर डिप्लॉय करें. इसके बाद, Firebase आपके ऐप्लिकेशन के इस्तेमाल के पैटर्न के मुताबिक कंप्यूटिंग रिसोर्स को अपने-आप स्केल अप करता है. आपको कभी क्रेडेंशियल, सर्वर कॉन्फ़िगरेशन, नए सर्वर की प्रोविजनिंग या पुराने सर्वर की सुविधा बंद होने की चिंता नहीं रहती है.
आपके लॉजिक को निजी और सुरक्षित बनाए रखता है कई मामलों में, डेवलपर ऐप्लिकेशन के लॉजिक को सर्वर पर कंट्रोल करना पसंद करते हैं, ताकि क्लाइंट साइड पर होने वाली छेड़छाड़ से बचा जा सके. इसके अलावा, कभी-कभी यह भी ज़रूरी होता है कि उस कोड को रिवर्स इंजीनियरिंग की अनुमति न दी जाए. Cloud Functions, क्लाइंट से पूरी तरह अलग है, ताकि आप यह पक्का कर सकें कि यह निजी है और हमेशा वही काम करता है जो आपको चाहिए.

यह कैसे काम करता है?

फ़ंक्शन लिखने और उसे डिप्लॉय करने के बाद, Google के सर्वर तुरंत फ़ंक्शन को मैनेज करना शुरू कर देते हैं. फ़ंक्शन को सीधे तौर पर एचटीटीपी अनुरोध, Admin SDK या शेड्यूल किए गए जॉब से ट्रिगर किया जा सकता है. बैकग्राउंड फ़ंक्शन के मामले में, Google के सर्वर इवेंट सुनते हैं और ट्रिगर होने पर फ़ंक्शन को चलाते हैं.

लोड बढ़ने या कम होने पर, Google आपके फ़ंक्शन को चलाने के लिए ज़रूरी वर्चुअल सर्वर इंस्टेंस की संख्या को तेज़ी से बढ़ाता या घटाता है. हर फ़ंक्शन अलग से चलता है. यह अपने कॉन्फ़िगरेशन के साथ अपने एनवायरमेंट में चलता है.

बैकग्राउंड फ़ंक्शन की लाइफ़साइकल

  1. आपको एक नए फ़ंक्शन के लिए कोड लिखना होगा. इसके लिए, आपको इवेंट प्रोवाइडर (जैसे कि Cloud Firestore) चुनना होगा. साथ ही, आपको वे शर्तें तय करनी होंगी जिनके तहत फ़ंक्शन को लागू किया जाना चाहिए.
  2. फ़ंक्शन डिप्लॉय करने पर:
    1. Firebase CLI, फ़ंक्शन कोड का .zip संग्रह बनाता है. इसके बाद, इसे Cloud Storage बकेट में अपलोड किया जाता है. इस बकेट के नाम की शुरुआत gcf-sources से होती है. इसके बाद, Cloud Functions आपके प्रोजेक्ट में Artifact Registry रिपॉज़िटरी बनाता है. इस रिपॉज़िटरी का नाम gcf-artifacts होता है.
    2. Cloud Build फ़ंक्शन कोड को वापस लाता है और फ़ंक्शन का सोर्स बनाता है. Google Cloud कंसोल में Cloud Build लॉग देखे जा सकते हैं.
    3. बनाए गए फ़ंक्शन के कोड की कंटेनर इमेज, आपके प्रोजेक्ट में मौजूद Artifact Registry नाम की निजी gcf-artifacts रिपॉज़िटरी में अपलोड की जाती है. इसके बाद, आपका नया फ़ंक्शन रोल आउट कर दिया जाता है.
  3. जब इवेंट प्रोवाइडर ऐसा इवेंट जनरेट करता है जो फ़ंक्शन की शर्तों से मेल खाता है, तब कोड को चालू किया जाता है. इस फ़ंक्शन से एक सेवा खाता जुड़ा होता है. इसका इस्तेमाल, Firebase Admin SDK की मदद से Firebase की अन्य सेवाओं को ऐक्सेस करने के लिए किया जा सकता है.
  4. अगर फ़ंक्शन कई इवेंट मैनेज कर रहा है, तो Google ज़्यादा इंस्टेंस बनाता है, ताकि काम को तेज़ी से पूरा किया जा सके. अगर फ़ंक्शन का इस्तेमाल नहीं किया जा रहा है, तो इंस्टेंस हटा दिए जाते हैं.
  5. अपडेट किए गए कोड को डिप्लॉय करके फ़ंक्शन को अपडेट करने पर, पुराने वर्शन के इंस्टेंस और Artifact Registry में मौजूद बिल्ड आर्टफ़ैक्ट हटा दिए जाते हैं. साथ ही, उनकी जगह नए इंस्टेंस ले लेते हैं.
  6. फ़ंक्शन मिटाने पर, सभी इंस्टेंस और ज़िप संग्रह मिट जाते हैं. साथ ही, Artifact Registry में मौजूद, उनसे जुड़े बिल्ड आर्टफ़ैक्ट भी मिट जाते हैं. फ़ंक्शन और इवेंट प्रोवाइडर के बीच कनेक्शन हट जाता है.

बैकग्राउंड फ़ंक्शन के साथ इवेंट सुनने के अलावा, एचटीटीपी अनुरोध या क्लाइंट से कॉल करके फ़ंक्शन को सीधे तौर पर कॉल किया जा सकता है. Admin SDK की मदद से, फ़ंक्शन को किसी तय शेड्यूल पर ट्रिगर किया जा सकता है. इसके अलावा, टास्क फ़ंक्शन को कतार में लगाया जा सकता है.

लागू करने का तरीका

Cloud Functions सेट अप करें Firebase CLI इंस्टॉल करें और अपने Firebase प्रोजेक्ट में Cloud Functions को शुरू करें.
फ़ंक्शन लिखना Firebase सेवाओं, Google Cloud सेवाओं या इवेंट की अन्य सेवा देने वाली कंपनियों से इवेंट मैनेज करने के लिए, JavaScript कोड, TypeScript कोड या Python कोड लिखें.
टेस्ट फ़ंक्शन अपने फ़ंक्शन की जांच करने के लिए, लोकल एम्युलेटर का इस्तेमाल करें.
डिप्लॉय और मॉनिटर करना अपने प्रोजेक्ट को इस्तेमाल के हिसाब से शुल्क चुकाने वाले ब्लेज़ प्लान पर अपग्रेड करें. इसके बाद, Firebase CLI का इस्तेमाल करके अपने फ़ंक्शन डिप्लॉय करें. इसके बाद, अपने लॉग देखने और उनमें खोजने के लिए, Google Cloud कंसोल का इस्तेमाल किया जा सकता है.

अगले चरण