डेवलपर टूल · क्रोंटैब जनरेटर
एनाCron और cron.daily: मशीन बंद होने पर शेड्यूल की गई नौकरियां कैसे बची रहती हैं
· पेजभूमि
Cron विश्वसनीयता अनुसूची बनाना
Cron मानता है कि मशीन हमेशा चालू रहती है; एनाCron नहीं करता है. यह पोस्ट बताती है कि एनाCron अंतिम रन को कैसे ट्रैक करता है, डेबियन-शैली cron.daily निर्देशिकाएं इसका उपयोग कैसे करती हैं, और दोनों के बीच चयन कैसे करें।
स्लीपिंग मशीन परिदृश्य ब्राउज़र के बाहर है; पूर्वावलोकन केवल भविष्य के उम्मीदवारों की खोज करता है
ToolAcre यह निरीक्षण नहीं कर सकता कि लैपटॉप 06:25 के माध्यम से सोया या नहीं। इसके अगले-रन फ़ंक्शन को एक शुरुआती तत्काल प्राप्त होता है और एक मिनट बाद शुरू होने पर सख्ती से आगे की खोज होती है। पहले के मिलान मिनट वापस नहीं किए जाते क्योंकि सुविधा भविष्य का पूर्वावलोकन है, इतिहास या पुनर्प्राप्ति इंजन नहीं।
यह सूची को योजना बनाने के लिए उपयोगी बनाता है लेकिन कैच-अप के बारे में चुप है। हो सकता है कि किसी लापता पूर्व उम्मीदवार ने दौड़ लगा दी हो, उसे छोड़ दिया गया हो या किसी अन्य सेवा द्वारा उसे संभाला गया हो; ब्राउज़र का कोई निष्पादन रिकॉर्ड नहीं है. केवल भविष्य की सूची में अनुपस्थिति के बजाय स्थापित शेड्यूलर से डाउनटाइम व्यवहार का निदान करें।
बाहरी Cron मिस्ड-रन व्यवहार यहां स्थापित नहीं है
कार्यपुस्तिका में दावा किया गया है कि Cron छूटे हुए मिनटों को त्याग देता है। कोई डेमॉन कार्यान्वयन या अपटाइम परीक्षण इस रिपॉजिटरी का हिस्सा नहीं है, इसलिए सार्वभौमिक दावा दोहराया नहीं जाता है। जो सिद्ध है वह यह है कि ToolAcre स्वयं नौकरियों को कतारबद्ध नहीं करता है: यह मेमोरी में तारीखों की गणना करता है और उन्हें पेज पर लौटाता है।
एक लक्ष्य अनुसूचक एक छूटी हुई नीति का दस्तावेजीकरण कर सकता है, और एक रैपर एक और जोड़ सकता है। उस नीति को स्पष्ट रूप से कैप्चर करें. एक ही `0 6 * * *` अभिव्यक्ति अपने पांच मूल्यों में से किसी को भी बदले बिना विभिन्न पुनर्प्राप्ति डिज़ाइन में भाग ले सकती है।
एनाCron स्थिति और देरी लागू नहीं की जाती है
`cron.js` में कोई एनाCron टाइमस्टैम्प फ़ाइल, पीरियड काउंटर या स्टार्टअप विलंब नहीं है। पार्सर कैलेंडर फ़ील्ड जानता है, जबकि पूर्वावलोकन एक कॉन्फ़िगर करने योग्य खोज क्षितिज जानता है। जब कोई बाहरी कार्रवाई अंतिम बार पूरी हो जाती है तो कोई भी संग्रहीत नहीं होता है।
इसलिए यह लेख परियोजना साक्ष्य से एनाCron की सटीक स्थिति में बदलाव की व्याख्या नहीं कर सकता है। यदि कैच-अप की आवश्यकता है, तो वास्तविक सुविधा पर शोध और परीक्षण करें। ToolAcre अभी भी इसके साथ रखी गई किसी भी सटीक-समय वाली Cron लाइनों का निर्माण कर सकता है, लेकिन यह एनाCron नीति को मान्य नहीं कर सकता है।
एनाक्रोंटैब सिंटैक्स पांच-फील्ड पार्सर के बाहर है
एनाक्रॉंटैब पंक्ति पांच-फ़ील्ड क्रोन अभिव्यक्ति नहीं है। इसकी अवधि, विलंब और पहचानकर्ता को ToolAcre में फीड करने से इसके वास्तविक सिंटैक्स के बारे में कुछ भी सिखाए बिना फ़ील्ड गणना या मूल्य सत्यापन विफल हो जाएगा। समान शेड्यूलिंग लक्ष्य विनिमेय फ़ाइल स्वरूपों का संकेत नहीं देते हैं।
देशी सत्यापनकर्ताओं को देशी व्याकरण के साथ रखें। मिनट-दर-कार्यदिवस अभिव्यक्तियों के लिए इस मार्ग का उपयोग करें और अवधि-आधारित कैच-अप कॉन्फ़िगरेशन के लिए एक अलग स्रोत का उपयोग करें। अनुवाद को परिचालन आवश्यकता को संरक्षित करना चाहिए, न कि केवल एक पाठ प्रपत्र को दूसरे पार्सर के माध्यम से मजबूर करना चाहिए।
cron.daily इस रिपॉजिटरी से वायरिंग का अनुमान नहीं लगाया जा सकता है
निर्देशिका तंत्र और पैकेजों के बीच हैंडऑफ़ समीक्षाधीन कोडबेस से अनुपस्थित हैं। जनरेटर यह नहीं जान सकता कि `/etc/cron.daily` मौजूद है या नहीं, कौन सा रनर इसे लागू करता है या कोई अन्य पैकेज स्थापित होने पर क्या होता है। ऐसी कोई भी वायरिंग पर्यावरण-विशिष्ट साक्ष्य है।
किसी कार्य को आगे बढ़ाने से पहले लक्ष्य की सूची बनाना। अकेले निर्देशिका नाम से दीवार-घड़ी के समय या कैच-अप व्यवहार का पता नहीं चलता है। आवश्यकता के साथ देखे गए सेवा कॉन्फ़िगरेशन की तुलना करें, और ToolAcre अभिव्यक्ति को केवल तभी बनाए रखें जब कार्य वास्तव में संगत Cron पथ में रहता है।
कार्य सीमा: भविष्य के उम्मीदवारों की बिना किसी पकड़-पकड़ का वादा किए तुलना करें
दैनिक उदाहरण के लिए, `0 6 * * *` दर्ज करें और परिनियोजन क्षेत्र चुनें। पूर्वावलोकन में अब के बाद पांच भावी 06:00 वॉल-क्लॉक उम्मीदवारों की सूची है। यदि प्रारंभ तत्काल आज के 06:00 को पार कर चुका है, तो कल पहला परिणाम बन जाएगा। यह अग्रेषित-खोज व्यवहार है, आज सुबह क्या हुआ इसका सबूत नहीं।
कैलेंडर अभिप्राय और ज़ोन रूपांतरण की जाँच करने के लिए सूची का उपयोग करें। फिर एक निर्धारित समय के दौरान एक सुरक्षित परीक्षण वातावरण को पावर-साइकल करें या निलंबित करें और वास्तविक शेड्यूलर की नीति का पालन करें। दोनों प्रयोग अलग-अलग सवालों के जवाब देते हैं और इन्हें अलग-अलग प्रलेखित किया जाना चाहिए।
लगातार टाइमर व्यवहार असत्यापित और छोड़ा गया है
कार्यपुस्तिका में किसी अन्य सेवा प्रबंधक में लगातार सेटिंग का उल्लेख किया गया है। यहां कोई भी इकाई पार्सर या परीक्षण उस कथन का समर्थन नहीं करता है। यह प्रासंगिक बाहरी शोध हो सकता है, लेकिन यह मॉड्यूल आधिकारिक स्रोत सामग्री के बिना इसे अनुशंसा में नहीं बदलता है।
मिस्ड-रन आवश्यकता स्पष्ट स्वीकृति मानदंड की हकदार है: चाहे तुरंत चलाना हो, छोड़ना हो, एकजुट होना हो या हर घटना को संरक्षित करना हो। एक ऐसी प्रणाली का चयन करें जो आवश्यक परिणाम का दस्तावेजीकरण करे और उसे सत्यापित करे। ToolAcre आधार रेखा के रूप में उपयोग की जाने वाली क्रोन ताल प्रदान कर सकता है, इससे अधिक कुछ नहीं।
टेकअवे: शेड्यूल को अलग से सत्यापित मिस्ड-रन पॉलिसी के साथ जोड़ें
यदि मशीन अनुपलब्ध हो तो एक आवर्ती अभिव्यक्ति विश्वसनीयता डिज़ाइन के रूप में अधूरी है। कैलेंडर मिलान और कैच-अप नीति अलग-अलग हैं। ToolAcre पहले को उजागर करता है और जानबूझकर बाद वाले के लिए कोई स्थायी निष्पादन स्थिति नहीं रखता है।
भविष्य का पूर्वावलोकन करें, ज़ोन रिकॉर्ड करें और फिर गंतव्य पर मिस-रन व्यवहार का परीक्षण करें। यदि कोई अन्य तंत्र पुनर्प्राप्ति का स्वामी है, तो उसे अभिव्यक्ति के बगल में दस्तावेज़ित करें। यह कहने से बचें कि जनरेटर या पाँच फ़ील्ड पुनः प्रयास की गारंटी देते हैं, क्योंकि कोई भी यह नहीं देख सकता है कि एक रन चूक गया था।