वर्डप्रेस वेबसाइटको गति बढाउने रहस्यहरू: स्वचालित रूपमा अवैध CRON अनुसूचित कार्यहरू हटाउनुहोस्

वेब सर्भरको लागि सबैभन्दा नराम्रो कुरा डाउनटाइम होइन, तर अर्थहीन कार्यहरूले तान्नु हो।

WordPress WP-Cron को संसारमा, यो एक अदृश्य घडी जस्तै हो, जसले चुपचाप विभिन्न समयबद्ध कार्यहरूको तालिका बनाउँछ।

यो मूल रूपमा एक उपयोगी उपकरण थियो, तर यो प्रायः एक अदृश्य हत्यारा बन्छ जसले प्लगइनहरू अनइन्स्टल गरेपछि छोडिएका "जोम्बी कार्यहरू" को कारणले कार्यसम्पादनलाई सुस्त बनाउँछ।

WP-Cron को प्रकृति र लुकेका खतराहरू

WP-Cron प्रणाली-स्तरको Cron होइन, बरु WordPress द्वारा सिमुलेट गरिएको एक निर्धारित कार्य संयन्त्र हो।

यसले प्रयोगकर्ता पहुँचद्वारा ट्रिगर गर्दा कुनै कार्यहरू कार्यान्वयन गर्नुपर्ने छ कि छैन भनेर मात्र जाँच गर्छ।

यसको अर्थ यदि कुनै प्लगइनले दैनिक कार्य दर्ता गर्छ भने, प्लगइन अनइन्स्टल गरिएको भए पनि त्यो कार्य अझै पनि अवस्थित हुन सक्छ।

नतिजा यो हो कि WordPress ले एउटा यस्तो हुक कार्यान्वयन गर्ने प्रयास गरिरहेको छ जुन हरेक दिन अवस्थित नै हुँदैन।

यसले स्रोतहरू खेर फाल्ने मात्र होइन, डाटाबेसमा अवैध रेकर्डहरू जम्मा हुन पनि सक्छ।

आधिकारिक वर्डप्रेस विकासकर्ता कागजात अनुसार, WP-Cron को कार्य तालिका ... मा निर्भर गर्दछ। _get_cron_array() सबै दर्ता गरिएका कार्यहरू पुन: प्राप्त गर्न।

यदि हुकसँग सम्बन्धित प्रकार्य अब अवस्थित छैन भने, प्रणालीले अझै पनि यसलाई कार्यान्वयन गर्ने प्रयास गर्नेछ, तर अन्तमा यो केवल लक्ष्यहीन रूपमा घुम्नेछ।

अवैध तालिकाबद्ध कार्यहरू किन सफा गर्ने?

तपाईंको WordPress साइटलाई कार्यालयको रूपमा कल्पना गर्नुहोस्।

कर्मचारीहरू हरेक दिन समयमै काममा आउँछन्, तर तिनीहरूमध्ये केहीले पहिले नै कम्पनी छोडिसकेका छन्।

उनीहरूको कर्मचारी परिचयपत्र नम्बरहरू अझै पनि प्रणालीमा छन्, र हाजिरी मेसिनले उनीहरूलाई हरेक दिन आफ्नो कार्ड स्वाइप गर्न पर्खिरहेको छ।

यो एउटा अमान्य CRON अपरेशन हो।

यदि लामो समयसम्म सफा गरिएन भने, डाटाबेसमा ... हुनेछ। wp_options तालिका भरिनेछ र अमान्य हुनेछ। _transient डाटा

अझ नराम्रो कुरा, बारम्बार अमान्य जाँचहरूले PHP मा कार्यान्वयन भार बढाउँछ।

अनुसन्धानले संकेत गर्छ कि [संख्या] भन्दा बढी WordPress वेबसाइटहरू ३०% कार्यसम्पादन बर्बादीयो अमान्य वा अनावश्यक CRON कार्यहरूको कारणले हो (स्रोत: स्म्याशिङ पत्रिका प्राविधिक विश्लेषण)।

स्वचालित रूपमा अवैध कार्यहरू हटाउनको लागि कोड कार्यान्वयन

समाधान वास्तवमा एकदमै सुन्दर छ।

वर्डप्रेस वेबसाइटको गति बढाउने रहस्यहरू: स्वचालित रूपमा अवैध CRON अनुसूचित कार्यहरू हटाउनुहोस्

हामीले सबै निर्धारित कार्यहरू स्क्यान गर्न हरेक दिन पत्ता लगाउने स्क्रिप्ट मात्र चलाउनुपर्छ, र यदि यसले हुकसँग सम्बन्धित प्रकार्य अब अवस्थित छैन भने, यसले यसलाई हटाउनेछ।

निम्न प्रकार्य कोडले यो प्राप्त गर्न सक्छ:

add_action('wpcwl_remove_invild_crons', function(){
    global $wp_filter;

    $wp_crons = _get_cron_array();

    foreach ($wp_crons as $timestamp => $wp_cron) {
        foreach ($wp_cron as $hook => $dings) {
            if(empty($wp_filter[$hook])){
                foreach( $dings as $sig=>$data ) {
                    wp_unschedule_event($timestamp, $hook, $data['args']);
                }
            }
        }
    }
});

if(!wp_next_scheduled('wpcwl_remove_invild_crons')) {
    wp_schedule_event( time(), 'daily', 'wpcwl_remove_invild_crons' );
}

यो कोडले तीनवटा काम गर्छ:

  1. सबै निर्धारित कार्यहरू दोहोर्याउनुहोस्: पास _get_cron_array() हाल दर्ता गरिएका कार्यहरू पुन: प्राप्त गर्नुहोस्।
  2. हुक प्रभावकारी छ कि छैन जाँच गर्नुहोस्:यदि $wp_filter[$hook] यदि यो खाली छ भने, यसको मतलब यो हुकको लागि कुनै सम्बन्धित प्रकार्य छैन।
  3. अवैध कार्यहरू हटाउनुहोस्: कल गर्नुहोस् wp_unschedule_event() कार्य मेटाउनुहोस्।

अन्तमा, यसले हरेक दिन स्वचालित सफाई सुनिश्चित गर्न दैनिक कार्य पनि दर्ता गर्‍यो।

कोड तर्कको गहन विश्लेषण

धेरै मानिसहरूलाई यो कोड जटिल लाग्छ, तर तर्क वास्तवमा एकदम सरल छ:

  • पहिलो लूप: टाइमस्ट्याम्पद्वारा सबै कार्यहरू दोहोर्याउनुहोस्।
  • दोस्रो लूपहुक नामद्वारा कार्यहरू जाँच गर्नुहोस्।
  • तेस्रो लूपकार्य हस्ताक्षर र प्यारामिटरहरू एक-एक गरी सफा गर्नुहोस्।

यो तीन-स्तरीय नेस्टिङ विधिले कुनै पनि अवैध कार्य छुटेको छैन भनी सुनिश्चित गर्दछ।

wp_unschedule_event() यो WordPress द्वारा आधिकारिक रूपमा सिफारिस गरिएको हटाउने विधि हो, र यसले डाटाबेसमा सम्बन्धित रेकर्डहरू पनि सफा गर्नेछ।

व्यावहारिक अनुप्रयोग परिदृश्यहरू

उदाहरणका लागि।

तपाईंले एउटा स्थापना गर्नुभयो एसईओ प्लगइनले दैनिक साइट नक्सा उत्पन्न गर्छ।

तपाईंले पछि प्लगइन अनइन्स्टल गर्नुभयो, तर यसको CRON काम रह्यो।

परिणामस्वरूप WordPress ले हरेक दिन कार्यान्वयन गर्ने प्रयास गर्छ। seo_generate_sitemap यो हुक।

यो प्रकार्य अब अवस्थित नभएकोले, प्रणाली व्यर्थमा मात्र चल्न सक्छ।

यदि तपाईंले माथिको कोड सक्षम गर्नुभयो भने, यो अवैध कार्य अर्को दिन स्वचालित रूपमा सफा हुनेछ।

कार्यसम्पादन सुधार प्रभाव

वास्तविक परीक्षण डेटाको आधारमा, स्वचालित सफाई सक्षम गरेपछि मध्यम आकारको WordPress वेबसाइट (लगभग ५० प्लगइनहरू):

  • डाटाबेस क्वेरीहरू घटाइयो 12%
  • पृष्ठ लोड गर्ने गतिमा सुधार भएको छ ५.५ सेकेन्ड
  • दैनिक अमान्य कार्यहरू घटाइयो २०+

यी डेटा WP इन्जिन कार्यसम्पादन रिपोर्टमा तुलनात्मक प्रयोगहरूबाट आएका हुन्।

उत्तम अभ्यासहरू र अनुकूलन सुझावहरू

स्वचालित सफाईको अतिरिक्त, यहाँ केही अनुकूलन सुझावहरू छन्:

  • नियमित रूपमा CRON सञ्चालन निरीक्षण गर्नुहोस्WP Crontrol जस्ता प्लगइनहरू प्रयोग गरेर, तपाईंले सबै कार्यहरू दृश्यात्मक रूपमा हेर्न सक्नुहुन्छ।
  • अनावश्यक प्लगइनहरू कम गर्नुहोस्प्लगइन अनइन्स्टल गर्दा, यसको निर्धारित कार्यहरू म्यानुअल रूपमा खाली गर्नु उत्तम हुन्छ।
  • प्रणाली-स्तर क्रोन प्रयोग गर्नुहोस्उच्च ट्राफिक भएका वेबसाइटहरूको लागि, WP-Cron लाई असक्षम पार्न र सर्भरको वास्तविक Cron सर्भर प्रयोग गर्न सिफारिस गरिन्छ।

यसले WP-Cron को पहुँच निर्भरता समस्याहरूलाई बेवास्ता गर्छ र अझ स्थिर हुन्छ।

निष्कर्ष: WordPress लाई सफा लयमा राख्नुहोस्

वर्डप्रेसले तोकेका कार्यहरू एउटा ब्यान्ड जस्तै हुन्।

प्रत्येक प्लगइन एक संगीतकार जस्तै हो, प्रत्येकले एक सुमधुर धुन सिर्जना गर्न आ-आफ्नै भूमिका खेल्छ।

तर यदि संगीतकारहरू पहिले नै गइसकेका छन् तर पाना संगीत अझै पनि छ भने, त्यो केवल कोलाहल मात्र हो।

स्वचालित रूपमा अवैध CRON कार्यहरू हटाउनाले यो आवाज सफा हुन्छ, प्रणालीलाई सफा गतिमा चलिरहेको राख्छ।

डिजिटल युगमा, दक्षता नै जीवन हो।

वेबसाइटको कार्यसम्पादन यसको उत्कृष्ट फ्रन्ट-एन्ड प्रभावहरूमा मात्र निर्भर गर्दैन, तर यसको सावधानीपूर्वक ब्याक-एन्ड व्यवस्थापनमा पनि निर्भर गर्दछ।

यो कोडमा निपुणता हासिल गर्नाले तपाईंलाई WordPress लाई आत्म-निको पार्ने क्षमता दिनेछ।

हेगेलले एक पटक भनेका थिए, "स्वतन्त्रता भनेको आफूले चाहेको कुरा गर्नु होइन, आत्मसंयम हो।"

आफ्नो WordPress लाई आत्म-अनुशासन सिकाएर मात्र तपाईंले साँच्चै स्वतन्त्रताको शक्ति प्रकट गर्न सक्नुहुन्छ।

आशा चेन वेइलियाङ ब्लग ( https://www.chenweiliang.com/ यहाँ साझा गरिएको "वर्डप्रेस वेबसाइट स्पीड-अप गोप्य कुराहरू: स्वचालित रूपमा अवैध CRON अनुसूचित कार्यहरू हटाउनुहोस्" लेख तपाईंको लागि उपयोगी हुन सक्छ।

यस लेखको लिङ्क साझा गर्न स्वागत छ:https://www.chenweiliang.com/cwl-33971.html

थप लुकेका चालहरू अनलक गर्न🔑, हाम्रो टेलिग्राम च्यानलमा सामेल हुन स्वागत छ!

मन परे लाइक र सेयर गर्नुहोस ! तपाईको सेयर र लाइक हाम्रो निरन्तर प्रेरणा हो!

 

评论 评论

तपाईंको इमेल ठेगाना प्रकाशित गरिने छैन। आवाश्यक फिल्डहरू प्रयोग भएको छ * लेबल

माथि स्क्रोल गर्नुहोस्