Cloud Functions के वर्शन की तुलना

Cloud Functions for Firebase के दो वर्शन उपलब्ध हैं:

  • Cloud Functions (दूसरी जनरेशन). इसकी मदद से, आपके फ़ंक्शन को Cloud Run पर सेवाओं के तौर पर डिप्लॉय किया जाता है. इससे, Eventarc और Pub/Sub का इस्तेमाल करके, उन्हें ट्रिगर किया जा सकता है.
  • Cloud Functions (1st gen). यह फ़ंक्शन का ओरिजनल वर्शन है. इसमें इवेंट ट्रिगर और कॉन्फ़िगरेशन की सीमित सुविधाएं मिलती हैं.

हमारा सुझाव है कि नए फ़ंक्शन के लिए, Cloud Functions (2nd gen) को चुनें. हालांकि, हमारा प्लान Cloud Functions (1st gen) के लिए सहायता जारी रखने का है.

इस पेज पर, Cloud Functions में जोड़ी गई सुविधाओं के बारे में बताया गया है. साथ ही, इसमें प्रॉडक्ट के दोनों वर्शन की तुलना की गई है.

Cloud Functions (2nd gen)

Cloud Functions Firebase का अगली जनरेशन का Functions-as-a-Service ऑफ़र है. Cloud Run और Eventarc पर बने Cloud Functions (2nd gen) में, Cloud Functions के लिए बेहतर इन्फ़्रास्ट्रक्चर और ज़्यादा इवेंट कवरेज की सुविधा मिलती है. इसमें ये शामिल हैं:

  • इस पर बना: फ़ंक्शन, की मदद से बनाए जाते हैं और डिफ़ॉल्ट Cloud Run एक्ज़ीक्यूशन एनवायरमेंट का इस्तेमाल करके, Cloud Run सेवाओं के तौर पर डिप्लॉय किए जाते हैं.Cloud RunCloud Build इससे, आपको अपने फ़ंक्शन को Cloud Run सेवा की तरह ही पसंद के मुताबिक बनाने की सुविधा मिलती है. अपनी सेवा को कॉन्फ़िगर करने के विकल्पों के बारे में जानने के लिए, Cloud Run दस्तावेज़ देखें. जैसे, मेमोरी की सीमाएं, एनवायरमेंट वैरिएबल, वगैरह.
  • अनुरोध को प्रोसेस करने में ज़्यादा समय लगना: ज़्यादा समय लगने वाले अनुरोधों के वर्कलोड चलाएं. जैसे, Cloud Storage या BigQuery से डेटा की बड़ी स्ट्रीम को प्रोसेस करना.
  • बड़े इंस्टेंस साइज़: इन-मेमोरी, कंप्यूट-इंटेंसिव, और पैरलल वर्कलोड चलाएं.
  • बेहतर कंकरेंसी: कोल्ड स्टार्ट को कम करने और इंतज़ार का समय कम करने के लिए, एक फ़ंक्शन इंस्टेंस से एक साथ कई अनुरोधों को हैंडल करें.
  • ट्रैफ़िक मैनेजमेंट: अलग-अलग फ़ंक्शन के रिविज़न के बीच ट्रैफ़िक को बांटें या किसी फ़ंक्शन को उसके पिछले वर्शन पर वापस ले जाएं.
  • Eventarc इंटिग्रेशन: Eventarc ट्रिगर के लिए, नेटिव सहायता. इससे, Eventarc के साथ काम करने वाले 90 से ज़्यादा इवेंट सोर्स, Cloud Functions पर उपलब्ध हो जाते हैं.
  • CloudEvents के लिए ज़्यादा सहायता: सभी लैंग्वेज रनटाइम में, इंडस्ट्री-स्टैंडर्ड CloudEvents के लिए सहायता. इससे, डेवलपर को एक जैसा अनुभव मिलता है.

ज़्यादा जानकारी के लिए, तुलना करने वाली टेबल देखें.

क्योंकि Cloud Functions फ़ंक्शन को Cloud Run पर सेवाओं के तौर पर डिप्लॉय करता है, इसलिए Cloud Functions संसाधन कोटा और सीमाएं Cloud Run के साथ शेयर करता है. कोटा देखें.

तुलना करने वाली टेबल

सुविधा Cloud Functions (1st gen) Cloud Functions
इमेज रजिस्ट्री Container Registry या Artifact Registry सिर्फ़ Artifact Registry
अनुरोध का समय खत्म नौ मिनट तक
  • एचटीटीपी ट्रिगर वाले फ़ंक्शन के लिए, 60 मिनट तक
  • इवेंट ट्रिगर वाले फ़ंक्शन के लिए, नौ मिनट तक
सेवा खाता* Google App Engine सेवा खाता (PROJECT_ID@appspot.gserviceaccount.com) Google Cloud का डिफ़ॉल्ट कंप्यूट सेवा खाता (PROJECT_NUMBER-compute@developer.gserviceaccount.com)
इंस्टेंस का साइज़ दो वीसीपीयू के साथ आठ जीबी रैम तक चार वीसीपीयू के साथ 16 जीबी रैम तक
कंकरेंसी हर फ़ंक्शन इंस्टेंस के लिए, एक साथ एक अनुरोध हर फ़ंक्शन इंस्टेंस के लिए, एक साथ 1,000 अनुरोध तक

* यह डिफ़ॉल्ट सेवा खाता है. इसका इस्तेमाल, चालू फ़ंक्शन से Firebase या Cloud API ऐक्सेस करने के लिए किया जाता है. जब बिना किसी आर्ग्युमेंट के, Firebase Admin SDK को शुरू किया जाता है, तब इसका इस्तेमाल किया जाता है.

कीमत

कीमत की जानकारी के लिए, Firebase की कीमतें देखें.

Cloud Functions से जुड़ी लागत को इस तरह देखा जा सकता है:

  1. Google Cloud Console में, Cloud Billing रिपोर्ट वाले पेज पर जाएं.
  2. अगर कहा जाए, तो अपने Google Cloud प्रोजेक्ट से जुड़ा बिलिंग खाता चुनें.
  3. फ़िल्टर पैनल में, लेबल में जाकर, लेबल फ़िल्टर जोड़ें जिसमें कुंजी goog-managed-by और वैल्यू cloudfunctions हो.

सीमाएं

Cloud Functions for Firebase (2nd gen), Analytics इवेंट के लिए सहायता उपलब्ध नहीं कराता.

हालांकि, Cloud Functions for Firebase (2nd gen), ऑथेंटिकेशन ब्लॉक करने वाले इवेंट के लिए सहायता उपलब्ध कराता है. हालांकि, यह 1st gen की तरह, ऑथेंटिकेशन के बुनियादी Authentication इवेंट के एक ही सेट के लिए सहायता उपलब्ध नहीं कराता.

हालांकि, 1st gen और 2nd gen के फ़ंक्शन, एक ही सोर्स फ़ाइल में साथ-साथ मौजूद हो सकते हैं. इसलिए, 2nd gen के फ़ंक्शन के साथ, 1st gen में Analytics और बुनियादी Authentication ट्रिगर को अब भी डेवलप और डिप्लॉय किया जा सकता है.