Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

अनुसूची कार्य

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

यदि आप निर्दिष्ट समय पर कार्यों को चलाने के लिए शेड्यूल करना चाहते हैं, तो functions.pubsub.schedule().onRun() का उपयोग करें। वांछित अनुसूची।

शुरू करने से पहले

अपने फायरबेस प्रोजेक्ट में इस समाधान का उपयोग करने के लिए, आपका प्रोजेक्ट ब्लेज़ मूल्य निर्धारण योजना पर होना चाहिए। यदि यह पहले से ब्लेज़ प्लान पर नहीं है, तो अपनी मूल्य- निर्धारण योजना को अपग्रेड करें

हालांकि बिलिंग की आवश्यकता है, आप उम्मीद कर सकते हैं कि कुल लागत प्रबंधनीय होगी, क्योंकि प्रत्येक क्लाउड शेड्यूलर कार्य की लागत $0.10 (यूएसडी) प्रति माह है, और प्रति Google खाते में तीन नौकरियों की छूट है, बिना किसी शुल्क के। अपने अनुमानित उपयोग के आधार पर लागत अनुमान उत्पन्न करने के लिए ब्लेज़ मूल्य निर्धारण कैलकुलेटर का उपयोग करें।

आपके प्रोजेक्ट के लिए पब/सब और क्लाउड शेड्यूलर एपीआई सक्षम होना चाहिए। ये अधिकांश Firebase प्रोजेक्ट के लिए पहले से ही सक्षम होने चाहिए; आप Google क्लाउड प्लेटफ़ॉर्म कंसोल में सत्यापित कर सकते हैं।

एक अनुसूचित समारोह लिखें

फायरबेस के लिए क्लाउड फ़ंक्शंस में, शेड्यूलिंग लॉजिक आपके फ़ंक्शन कोड में रहता है, जिसमें कोई विशेष परिनियोजन-समय की आवश्यकता नहीं होती है। शेड्यूल्ड फ़ंक्शन बनाने के लिए, functions.pubsub.schedule('your schedule').onRun((context)) का उपयोग करें। उदाहरण के लिए, ऐप इंजन cron.yaml सिंटैक्स के साथ हर पांच मिनट में एक फ़ंक्शन चलाने के लिए, ऐसा कुछ करें:

exports.scheduledFunction = functions.pubsub.schedule('every 5 minutes').onRun((context) => {
  console.log('This will be run every 5 minutes!');
  return null;
});

Unix Crontab और App Engine सिंटैक्स दोनों क्लाउड शेड्यूलर द्वारा समर्थित हैं। उदाहरण के लिए, एक विशिष्ट समय क्षेत्र का चयन करने के लिए क्रोंटैब का उपयोग करने के लिए जिसमें एक निर्धारित कार्य चलाने के लिए, कुछ ऐसा करें:

exports.scheduledFunctionCrontab = functions.pubsub.schedule('5 11 * * *')
  .timeZone('America/New_York') // Users can choose timezone - default is America/Los_Angeles
  .onRun((context) => {
  console.log('This will be run every day at 11:05 AM Eastern!');
  return null;
});

timeZone का मान tz डेटाबेस से समय क्षेत्र का नाम होना चाहिए। समर्थित गुणों के बारे में अधिक जानकारी के लिए क्लाउड शेड्यूलर संदर्भ देखें।

एक निर्धारित कार्य तैनात करें

जब आप कोई शेड्यूल्ड फ़ंक्शन परिनियोजित करते हैं, तो संबंधित शेड्यूलर कार्य और पब/उप विषय स्वचालित रूप से बन जाते हैं। फायरबेस सीएलआई विषय के नाम को प्रतिध्वनित करता है, और आप जीसीपी कंसोल में कार्य और विषय देख सकते हैं। विषय का नाम निम्नलिखित सम्मेलन के अनुसार रखा गया है:

फायरबेस-अनुसूचित- function_name - region

उदाहरण के लिए:

firebase-अनुसूचित-अनुसूचितFunctionCrontab-us-east1.