Remote Config, JSON फ़ॉर्मैट वाले पैरामीटर और शर्तों के सेट होते हैं. इन्हें आपके Firebase प्रोजेक्ट के लिए बनाया जाता है. Remote Config कॉन्फ़िगरेशन को टेंप्लेट में व्यवस्थित करता है. इन टेंप्लेट को बनाया, अपडेट किया, वर्शन किया, और पहले जैसा किया जा सकता है.
अपने आर्किटेक्चर के हिसाब से, क्लाइंट टेंप्लेट, सर्वर टेंप्लेट या दोनों बनाए और मैनेज किए जा सकते हैं:
क्लाइंट टेंप्लेट: Apple, Android, Web, Flutter, Unity, और C++ प्लैटफ़ॉर्म पर क्लाइंट ऐप्लिकेशन इंस्टेंस को कॉन्फ़िगरेशन उपलब्ध कराते हैं. क्लाइंट टेंप्लेट, Google Analytics ऑडियंस, ऐप्लिकेशन वर्शन, प्लैटफ़ॉर्म, डिवाइस की भाषा, देश, उपयोगकर्ता पर्सेंटाइल, और कस्टम सिग्नल के आधार पर शर्तों के साथ काम करते हैं.
सर्वर टेंप्लेट: ये बैकएंड एनवायरमेंट को कॉन्फ़िगरेशन उपलब्ध कराते हैं. जैसे, Cloud Run, Cloud Functions for Firebase या कंटेनर वाले सर्वर. इसके लिए, Node.js, Python, Go, और Java के लिए Firebase Admin SDK का इस्तेमाल किया जाता है. सर्वर टेंप्लेट, सर्वर साइड पर पैरामीटर का आकलन करते हैं. इसके लिए, सर्वर कस्टम सिग्नल और रैंडम प्रतिशत रोलआउट का इस्तेमाल किया जाता है. इसमें बहुत कम समय लगता है.
क्लाइंट और सर्वर टेंप्लेट की तुलना करना
क्लाइंट और सर्वर टेंप्लेट, आपके Firebase प्रोजेक्ट में अलग-अलग मैनेज किए जाते हैं. क्लाइंट और सर्वर टेंप्लेट में क्या अंतर है, यह जानने के लिए यहां दी गई टेबल देखें:
| सुविधा | क्लाइंट टेंप्लेट | सर्वर टेंप्लेट |
|---|---|---|
| टारगेट एनवायरमेंट | क्लाइंट ऐप्लिकेशन (Apple, Android, Web, Flutter, Unity, C++) | सर्वर एनवायरमेंट (Cloud Run, Cloud Functions for Firebase, GKE, बैकएंड सेवाएं) |
| साथ काम करने वाले एसडीके | Firebase क्लाइंट SDK टूल | Firebase Admin SDK (Node.js, Python, Go, Java) |
| मैनेजमेंट टूल | Firebase console, Firebase CLI, REST API, Firebase Admin SDK | Firebase कंसोल |
| कंसोल की जगह | पैरामीटर और शर्तें | पैरामीटर और शर्तें |
| टेंप्लेट के डिफ़ॉल्ट डाउनलोड | सपोर्ट किया गया (Android के लिए XML, iOS के लिए PLIST, वेब के लिए JSON) | लागू नहीं होता (डिफ़ॉल्ट वैल्यू, सर्वर कोड या बैकएंड में तय की जाती हैं) |
| ज़्यादा जानकारी | क्लाइंट टेंप्लेट मैनेज करना | सर्वर टेंप्लेट मैनेज करना |
टेंप्लेट का लाइफ़साइकल और वर्शन
क्लाइंट टेंप्लेट या सर्वर टेंप्लेट, किसी के साथ भी काम किया जा सकता है. Remote Config में वर्शन कंट्रोल और लाइफ़साइकल मैनेजमेंट की सुविधा पहले से मौजूद होती है:
वर्शन बनाना और उन्हें ट्रैक करना
पैरामीटर या शर्तों को अपडेट करने पर, Remote Config एक नया वर्शन वाला Remote Config टेंप्लेट बनाता है. साथ ही, पिछले टेंप्लेट को एक ऐसे वर्शन के तौर पर सेव करता है जिसे ज़रूरत के मुताबिक वापस लाया जा सकता है या रोल बैक किया जा सकता है. वर्शन नंबर, Remote Config से सेव की गई शुरुआती वैल्यू से क्रमवार तरीके से बढ़ते हैं.
सभी टेंप्लेट में version फ़ील्ड शामिल होता है. इसमें उस वर्शन के बारे में मेटाडेटा होता है. जैसे:
versionNumber: यह टेंप्लेट का क्रम से दिया गया वर्शन नंबर होता है.updateTime: टेंप्लेट पब्लिश होने का टाइमस्टैंप.updateUser: अपडेट करने वाले व्यक्ति का ईमेल पता या पहचान.updateOrigin: बदलाव कैसे किया गया (उदाहरण के लिए,CONSOLE,REST_APIयाADMIN_SDK_NODE).updateType: बदलाव का टाइप (उदाहरण के लिए,INCREMENTAL_UPDATEयाFORCED_UPDATE).
वर्शन की सीमाएं और उन्हें बनाए रखने की अवधि
हर टेंप्लेट टाइप के लिए, सेव किए गए वर्शन की कुल सीमा 300 होती है. इसमें क्लाइंट टेंप्लेट के 300 और सर्वर टेंप्लेट के 300 वर्शन शामिल हैं. इसमें मिटाए गए टेंप्लेट के सेव किए गए वर्शन नंबर भी शामिल हैं. अगर किसी प्रोजेक्ट के दौरान, हर टेंप्लेट टाइप के लिए 300 से ज़्यादा टेंप्लेट वर्शन पब्लिश किए जाते हैं, तो सबसे पुराने वर्शन मिटा दिए जाते हैं. हालांकि, उस टाइप के ज़्यादा से ज़्यादा 300 वर्शन सेव रखे जाते हैं.
रोलबैक
आप किसी भी समय, टेंप्लेट के सेव किए गए किसी भी वर्शन पर रोल बैक कर सकते हैं. जब आप रोल बैक करते हैं, Remote Config एक नया वर्शन बनाता है जिसका कॉन्टेंट, चुने गए पुराने वर्शन से मेल खाता है. उदाहरण के लिए, वर्शन 10 से वर्शन 6 पर रोल बैक करने से, वर्शन 6 के कॉन्फ़िगरेशन के साथ वर्शन 11 बन जाता है.
इंपोर्ट और एक्सपोर्ट करना
चालू टेंप्लेट को JSON फ़ाइल के तौर पर डाउनलोड किया जा सकता है. इसके बाद, इसे उसी प्रोजेक्ट या किसी दूसरे प्रोजेक्ट में पब्लिश किया जा सकता है. इस सुविधा की मदद से, ये काम किए जा सकते हैं:
- सोर्स कंट्रोल (जैसे कि Git) में टेंप्लेट की परिभाषाएं सेव करें.
- कॉन्फ़िगरेशन डिप्लॉयमेंट को सीआई/सीडी पाइपलाइन में इंटिग्रेट करें.
- कॉन्फ़िगरेशन को अलग-अलग चरणों में प्रमोट करें. उदाहरण के लिए, डेवलपमेंट या स्टेजिंग प्रोजेक्ट से प्रोडक्शन तक.
- प्रोजेक्ट के बीच कॉन्फ़िगरेशन माइग्रेट करें.
A/B Testing एक्सपेरिमेंट में खास तौर पर वैरिएंट के तौर पर बनाए गए पैरामीटर और पैरामीटर वैल्यू, एक्सपोर्ट किए गए टेंप्लेट में शामिल नहीं होती हैं.
टेंप्लेट के डिफ़ॉल्ट
क्लाइंट ऐप्लिकेशन के लिए, पैरामीटर की डिफ़ॉल्ट वैल्यू वाली फ़ाइलें डाउनलोड की जा सकती हैं. ये फ़ाइलें, एक्सएमएल, PLIST या JSON फ़ॉर्मैट में होती हैं. इन्हें अपने ऐप्लिकेशन के साथ बंडल किया जा सकता है. निर्देशों के लिए, Remote Config टेंप्लेट की डिफ़ॉल्ट वैल्यू डाउनलोड करना लेख पढ़ें.
अगले चरण
- क्लाइंट टेंप्लेट: क्लाइंट टेंप्लेट और वर्शन मैनेज करें Remote Config में जाकर, क्लाइंट टेंप्लेट को मैनेज करने, वर्शन करने, डाउनलोड करने, और पब्लिश करने का तरीका जानें.
- सर्वर टेंप्लेट: सर्वर टेंप्लेट और वर्शन मैनेज करें Remote Config में जाकर, सर्वर टेंप्लेट को मैनेज करने, वर्शन करने, और पब्लिश करने का तरीका जानें.
- पैरामीटर और शर्तें: जानें कि Remote Config पैरामीटर और शर्तों की खास जानकारी में पैरामीटर और शर्तें कैसे काम करती हैं.
- अपडेट अपने-आप होने की सुविधा: प्रोग्राम के हिसाब से Remote Config में बदलाव करें में जाकर, प्रोग्राम के हिसाब से टेंप्लेट में बदलाव करने का तरीका जानें.