Cronwise

सामान्य Cron शेड्यूल जिन्हें आप पुन: उपयोग कर सकते हैं

वैलिडेशन मार्गदर्शन, जोखिम नोट्स, और प्री-डिप्लॉयमेंट चेकलिस्ट के साथ प्रोडक्शन-रेडी cron पैटर्न।

Cron जनरेटर खोलें

पुन: उपयोग योग्य Cron पैटर्न क्यों मायने रखते हैं

अधिकांश cron गलतियां डिप्लॉयमेंट से पहले शुरू होती हैं, जब शेड्यूल इरादा और सिंटैक्स अलग हो जाते हैं। एक डेवलपर जानता है कि वे जॉब हर कार्य दिवस सुबह 9 बजे चलाना चाहते हैं, लेकिन एक गलत जगह रखा गया फील्ड मान एक्ज़ीक्यूशन को इसके बजाय कार्य दिवसों पर हर मिनट शिफ्ट कर देता है। परिणाम सैकड़ों अनपेक्षित रन और एक घबराहट भरा रोलबैक है।

यह लेख व्यावहारिक उदाहरणों, वैलिडेशन जांचों, और Cronwise में स्पष्ट अगले कदमों के साथ सामान्य cron शेड्यूल की सूची प्रदान करता है जिन्हें आप पुन: उपयोग कर सकते हैं। प्रत्येक पैटर्न में रॉ expression, सरल भाषा स्पष्टीकरण, और संभावित जोखिमों पर नोट्स शामिल हैं।

हर पैटर्न को सीधे Cronwise cron जनरेटर में टेस्ट करें, जो इनलाइन वैलिडेशन और टाइमज़ोन-अवेयर नेक्स्ट-रन प्रीव्यू प्रदान करता है। बिल्डर इंटरफ़ेस की पूरी वॉकथ्रू के लिए, विज़ुअल Cron जनरेटर गाइड देखें।

Cron शेड्यूलिंग के सर्वोत्तम-प्रैक्टिस सिद्धांत

विशिष्ट पैटर्न में गोता लगाने से पहले, कुछ सिद्धांत स्थापित करें जो एक वैध cron expression को प्रोडक्शन में सुरक्षित expression से अलग करते हैं।

स्पष्ट होना निहित से बेहतर है। 0 9 * * 1-5 जैसे विशिष्ट मान शॉर्टहैंड से बेहतर हैं जो गलत पढ़ी जा सकती है। स्पष्टता शेड्यूल को स्व-डॉक्यूमेंटिंग और टीम मेंबर्स के लिए रिव्यू करने में आसान बनाती है।

टाइमज़ोन संदर्भ के साथ वैलिडेट करें। UTC में परिभाषित शेड्यूल लोकल टाइमज़ोन में व्याख्या किए गए से भिन्न व्यवहार करता है। हमेशा अपना सर्वर वास्तव में जिस टाइमज़ोन का उपयोग करता है उसमें नेक्स्ट-रन टाइम की पुष्टि करें।

डिप्लॉय से पहले प्रीव्यू करें। कभी भी बिना नेक्स्ट-रन प्रीव्यू जांचे expression को crontab या CI/CD पाइपलाइन में कॉपी न करें।

अपना इरादा डॉक्यूमेंट करें। हर सेव किए गए expression के साथ यह वर्णन करने वाला नोट अटैच करें कि जॉब क्या करती है और वह उस समय क्यों चलती है।

उपयोग मामले के अनुसार अनुशंसित Cron पैटर्न

निम्नलिखित टेबल सबसे अधिक आवश्यक cron शेड्यूल सूचीबद्ध करती है। प्रत्येक expression वैलिडेट की गई है और नेक्स्ट-रन पुष्टि के लिए सीधे Cronwise जनरेटर में पेस्ट की जा सकती है।

Expressionअर्थकब उपयोग करेंजोखिम नोट्स
0 * * * *हर घंटे मिनट 0 परHourly डेटा सिंक, कैश रिफ्रेशकम जोखिम; पुष्टि करें जॉब एक घंटे में पूरी होती है
0 0 * * *दैनिक आधी रातलॉग रोटेशन, रात की रिपोर्टUTC आधी रात लोकल आधी रात से भिन्न हो सकती है
0 9 * * 1-5कार्य दिवसों पर 09:00बिज़नेस-आवर अलर्ट, केवल कार्य दिवस टास्कDay-of-week नंबरिंग भिन्न होती है; स्टैंडर्ड cron में 1=सोमवार
0 2 1 * *हर महीने का पहला दिन 02:00 परमासिक बिलिंग, इनवॉइसिंग ट्रिगरछोटे महीने ठीक हैं; 1 फरवरी हमेशा मौजूद है
*/15 * * * *हर 15 मिनटहेल्थ चेक्स, हल्की पोलिंगउच्च फ्रीक्वेंसी; सुनिश्चित करें जॉब idempotent है
0 3 * * 0रविवार 03:00 परसाप्ताहिक डेटाबेस बैकअप, क्लीनअपस्टैंडर्ड cron में 0=रविवार; अपने सिस्टम से सत्यापित करें
30 4 15 * *हर महीने की 15 तारीख 04:30 परमिड-मंथ रीकंसिलिएशन रिपोर्टकोई फरवरी जोखिम नहीं; दिन 15 हमेशा मौजूद है
0 0 1 1 *1 जनवरी आधी रातवार्षिक लाइसेंस नवीनीकरण, वार्षिक आर्काइवलप्रति वर्ष केवल एक बार चलता है; सत्यापित करें कि वास्तव में ट्रिगर हुआ

इन expressions में प्रत्येक फील्ड कैसे काम करती है इसकी गहरी समझ के लिए, Cron Expression बेसिक्स पढ़ें।

पैटर्न जल्दी सत्यापित करना

पैटर्न की सूची तभी उपयोगी है जब आप प्रोडक्शन से पहले प्रत्येक को सत्यापित करें। Cronwise दो तेज़ सत्यापन पाथ प्रदान करता है।

पेस्ट और प्रीव्यू करें। cron जनरेटर खोलें, अपनी expression दर्ज करें, और नेक्स्ट-रन प्रीव्यू टेबल रिव्यू करें। यदि केवल कार्य दिवसों का शेड्यूल शनिवार रन दिखाता है, तो day-of-week फील्ड को एडजस्टमेंट चाहिए।

बनाएं और तुलना करें। टैब्ड फील्ड कंट्रोल का उपयोग करके विज़ुअली शेड्यूल बनाएं, फिर जनरेट की गई expression की इस सूची से तुलना करें। यदि वे भिन्न हैं, तो विज़ुअल बिल्डर स्पष्ट करता है कि कौन सी फील्ड विसंगति पैदा करती है।

दोनों पाथ इनलाइन वैलिडेशन से लाभान्वित होते हैं। Cronwise रेंज से बाहर मानों जैसी एरर और स्टेप अंतरालों जैसी असामान्य पैटर्न के लिए वॉर्निंग फ्लैग करता है। अंतिम expression कॉपी करने से पहले हर एरर हल करें और हर वॉर्निंग रिव्यू करें।

बचने योग्य एंटी-पैटर्न

हर सिंटैक्टिकली वैध cron expression प्रोडक्शन में नहीं आनी चाहिए। ये पैटर्न वास्तविक crontabs में बार-बार दिखते हैं और पूर्वानुमान लगाने योग्य समस्याएं पैदा करते हैं।

बिना थ्रॉटलिंग के हर मिनट चलाना। Expression * * * * * प्रति दिन 1,440 बार फायर होती है। जब तक जॉब idempotent न हो और 60 सेकंड से कम में पूरी न हो, यह ओवरलैपिंग एक्ज़ीक्यूशन और रिसोर्स एग्ज़ॉस्शन की ओर ले जाता है।

घंटे के शीर्ष पर जॉब्स स्टैक करना। कई जॉब्स को 0 * * * * पर शेड्यूल करना हर घंटे रिसोर्स स्पाइक बनाता है। मिनट फील्ड रैंडमाइज़ करके शुरू समय स्टैगर करें।

Day-of-week नंबरिंग अनदेखा करना। स्टैंडर्ड cron में, इम्प्लीमेंटेशन के अनुसार रविवार 0 या 7 हो सकता है। यदि आप 1=रविवार मानते हैं लेकिन आपका सिस्टम 1=सोमवार उपयोग करता है, तो आपकी वीकेंड जॉब कार्य दिवस पर चलती है।

टाइमज़ोन सत्यापन छोड़ना। 0 9 * * * जैसी expression का मतलब सर्वर जो भी टाइमज़ोन उपयोग करता है उसमें 09:00 है। यदि सर्वर UTC चलाता है और आपने लोकल टाइम इरादा किया था, तो जॉब गलत घंटे फायर होती है।

प्री-प्रोडक्शन रिव्यू चेकलिस्ट

किसी भी cron expression के लाइव एनवायरनमेंट तक पहुंचने से पहले, इस चेकलिस्ट से गुजरें।

जांचयह क्यों मायने रखता हैपास मानदंड
सिंटैक्स वैलिडेशन पासअमान्य expressions चुपचाप विफल होती हैंCronwise वैलिडेटर में शून्य एरर
नेक्स्ट-रन टाइम इरादे से मेल खाते हैंऑफ-बाय-वन एरर एक्ज़ीक्यूशन शिफ्ट करती हैंसभी 10 प्रीव्यू रन अपेक्षित शेड्यूल से मेल खाते हैं
टाइमज़ोन टारगेट सर्वर से मेल खाता हैलोकल बनाम UTC मिसमैच सबसे सामान्य डिप्लॉयमेंट एरर हैप्रीव्यू टाइमज़ोन सर्वर टाइमज़ोन पर सेट
कोई अनरिव्यूड वॉर्निंग नहींवॉर्निंग छोटे-महीने स्किप जैसे एज केसेज़ फ्लैग करती हैंप्रत्येक वॉर्निंग रिव्यूड और हल
जॉब idempotency कन्फर्मबार-बार रन डेटा करप्ट नहीं करने चाहिएजॉब री-एक्ज़ीक्यूशन सुरक्षित रूप से हैंडल करती है
मॉनिटरिंग मौजूदसाइलेंट फेल्योर अनदेखी रहती हैंमिस्ड रन के लिए अलर्ट कॉन्फ़िगर
रोलबैक प्लान डॉक्यूमेंटेडखराब शेड्यूल को तेज़ रिवर्सल चाहिएपिछला crontab वर्शन सेव या वर्शन-कंट्रोल्ड

हर आइटम गो/नो-गो गेट है। यदि कोई जांच विफल होती है, तो डिप्लॉय करने से पहले मुद्दा ठीक करें।

सब मिलाकर

पुन: उपयोग योग्य cron पैटर्न समय बचाते हैं, लेकिन वे केवल सुसंगत सत्यापन आदतों के साथ जोड़े जाने पर ही मूल्य देते हैं। इस सूची से एक ज्ञात-अच्छी expression से शुरू करें, सही टाइमज़ोन के साथ Cronwise जनरेटर में वैलिडेट करें, हर वॉर्निंग रिव्यू करें, और डिप्लॉयमेंट से पहले प्री-प्रोडक्शन चेकलिस्ट से गुजरें।

यदि आप cron सिंटैक्स में नए हैं और इन पैटर्न के साथ काम करने से पहले एक ठोस नींव बनाना चाहते हैं, तो Cron Expression बेसिक्स लेख 5-फील्ड संरचना को विस्तार से कवर करता है। विज़ुअल बिल्डर के साथ हैंड्स-ऑन अभ्यास के लिए, विज़ुअल Cron जनरेटर स्टेप-बाय-स्टेप वॉकथ्रू फॉलो करें।

इस लेख में हर पैटर्न Cronwise से सीधे टेस्ट, सेव, और एक्सपोर्ट किया जा सकता है। किसी अकाउंट की ज़रूरत नहीं, कोई डेटा आपके ब्राउज़र से बाहर नहीं जाता, और आपके सेव किए गए expressions निजी रहते हैं। अधिक शेड्यूलिंग रणनीतियों और ऑपरेशनल वर्कफ़्लो के लिए, Cronwise पर सभी cron लेख ब्राउज़ करें