ဆောင်းပါးလမ်းညွှန်
ဝဘ်ဆာဗာတစ်ခုအတွက် အဆိုးဆုံးအရာက downtime မဟုတ်ဘဲ အဓိပ္ပာယ်မဲ့တဲ့ အလုပ်တွေကြောင့် ဆွဲချခံရတာပါ။
In WordPress WP-Cron ကမ္ဘာမှာ၊ မမြင်ရတဲ့နာရီတစ်လုံးလိုပါပဲ၊ အချိန်သတ်မှတ်ထားတဲ့အလုပ်အမျိုးမျိုးကို တိတ်တဆိတ်အချိန်ဇယားဆွဲနေပါတယ်။
မူလက ၎င်းသည် အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သော်လည်း plugin များကို uninstall လုပ်ပြီးနောက် ကျန်ရှိနေသော "zombie tasks" များကြောင့် စွမ်းဆောင်ရည်ကို နှေးကွေးစေသည့် မမြင်ရသော killer တစ်ခု ဖြစ်လာလေ့ရှိသည်။
WP-Cron ရဲ့ သဘောသဘာဝနဲ့ ဖုံးကွယ်ထားတဲ့ အန္တရာယ်တွေ
WP-Cron သည် system-level Cron မဟုတ်ဘဲ WordPress ကိုယ်တိုင်က simulate လုပ်ထားတဲ့ scheduled task mechanism တစ်ခုဖြစ်ပါတယ်။
အသုံးပြုသူ ဝင်ရောက်ခွင့်မှ စတင်လိုက်သောအခါ လုပ်ဆောင်ရမည့် အလုပ်များ ရှိမရှိကိုသာ စစ်ဆေးသည်။
ဆိုလိုသည်မှာ ပလပ်အင်တစ်ခုသည် နေ့စဉ်လုပ်ငန်းဆောင်တာတစ်ခုကို မှတ်ပုံတင်ပါက ပလပ်အင်ကို ဖြုတ်လိုက်သော်လည်း ထိုလုပ်ငန်းဆောင်တာသည် ရှိနေနိုင်ဆဲဖြစ်သည်။
ရလဒ်အနေနဲ့ WordPress ဟာ နေ့တိုင်းမရှိနိုင်တဲ့ hook တစ်ခုကို execute လုပ်ဖို့ကြိုးစားနေပါတယ်။
ဤသည်မှာ အရင်းအမြစ်များကို အလဟဿဖြစ်စေရုံသာမက ဒေတာဘေ့စ်တွင် မမှန်ကန်သော မှတ်တမ်းများ စုပုံလာခြင်းကိုလည်း ဖြစ်စေနိုင်သည်။
တရားဝင် WordPress developer စာရွက်စာတမ်းအရ WP-Cron ရဲ့ task scheduling ဟာ... _get_cron_array() မှတ်ပုံတင်ထားသော အလုပ်များအားလုံးကို ပြန်လည်ရယူရန်။
hook နှင့် ကိုက်ညီသော function မရှိတော့ပါက system သည် ၎င်းကို execute လုပ်ရန် ကြိုးစားနေဦးမည်ဖြစ်သော်လည်း နောက်ဆုံးတွင် ၎င်းသည် ရည်ရွယ်ချက်မဲ့ လည်ပတ်နေမည်ဖြစ်သည်။
ဘာကြောင့် မှားယွင်းနေတဲ့ အချိန်ဇယားဆွဲထားတဲ့ အလုပ်တွေကို ရှင်းလင်းရတာလဲ။
သင့်ရဲ့ WordPress ဝက်ဘ်ဆိုက်ကို ရုံးခန်းတစ်ခုအဖြစ် မြင်ယောင်ကြည့်ပါ။
ဝန်ထမ်းများသည် နေ့တိုင်း အချိန်မှန်အလုပ်ဆင်းကြသော်လည်း အချို့မှာ ကုမ္ပဏီမှ ထွက်ခွာသွားကြပြီဖြစ်သည်။
သူတို့ရဲ့ ဝန်ထမ်း ID နံပါတ်တွေက စနစ်ထဲမှာ ရှိနေဆဲဖြစ်ပြီး ရုံးတက်ရောက်မှုစက်က သူတို့ရဲ့ ကတ်တွေကို နေ့တိုင်း ပွတ်ဆွဲဖို့ စောင့်နေပေးပါတယ်။
ဤသည်မှာ မမှန်ကန်သော CRON လုပ်ဆောင်ချက်ဖြစ်သည်။
အချိန်ကြာမြင့်စွာ မသန့်ရှင်းပါက ဒေတာဘေ့စ်တွင် ပါဝင်နေမည်မှာ... wp_options ဇယားက ပြည့်သွားပြီး ပျက်ပြယ်သွားပါလိမ့်မယ်။ _transient ဒေတာ။
ပိုဆိုးတာက invalid check တွေ မကြာခဏလုပ်ရင် PHP ရဲ့ execution burden ကို တိုးစေပါတယ်။
သုတေသနပြုချက်များအရ WordPress ဝဘ်ဆိုက်များ [number] ကျော် ၃၀% စွမ်းဆောင်ရည် အလဟဿဖြစ်မှု၎င်းသည် မမှန်ကန်သော သို့မဟုတ် ထပ်တလဲလဲဖြစ်နေသော CRON အလုပ်များကြောင့်ဖြစ်သည် (ရင်းမြစ်- Smashing Magazine နည်းပညာဆိုင်ရာ ခွဲခြမ်းစိတ်ဖြာမှု)။
မမှန်ကန်သော လုပ်ဆောင်စရာများကို အလိုအလျောက် ဖယ်ရှားရန်အတွက် ကုဒ်အကောင်အထည်ဖော်မှု
ဖြေရှင်းချက်က တကယ်တော့ အတော်လေး ခမ်းနားပါတယ်။

ကျွန်ုပ်တို့သည် အချိန်ဇယားဆွဲထားသော အလုပ်အားလုံးကို စကင်ဖတ်ရန် နေ့တိုင်း detection script တစ်ခုကို လုပ်ဆောင်ရန်သာ လိုအပ်ပြီး hook နှင့် သက်ဆိုင်သော function မရှိတော့ကြောင်း တွေ့ရှိပါက ၎င်းကို ဖယ်ရှားပေးပါလိမ့်မည်။
အောက်ပါ function code များက ဒီလိုလုပ်ဆောင်နိုင်ပါတယ်။
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' );
}
ဒီကုဒ်က အရာသုံးခုကို လုပ်ဆောင်ပေးပါတယ်-
- စီစဉ်ထားသော အလုပ်အားလုံးကို ထပ်ခါတလဲလဲ လုပ်ဆောင်ပါ:Pass တ
_get_cron_array()လက်ရှိ မှတ်ပုံတင်ထားသော အလုပ်များကို ပြန်လည်ရယူပါ။ - ချိတ်ထိရောက်မှုရှိမရှိစမ်းသပ်ပါ:အကယ်၍
$wp_filter[$hook]ဗလာဖြစ်နေရင် ဒီ hook အတွက် သက်ဆိုင်ရာ function မရှိဘူးလို့ ဆိုလိုပါတယ်။ - အသုံးမဝင်သော လုပ်ဆောင်စရာများကို ဖယ်ရှားပါ: ဖုန်းခေါ်ဆိုပါ
wp_unschedule_event()လုပ်ဆောင်ချက်ကို ဖျက်ပါ။
နောက်ဆုံးအနေနဲ့ နေ့စဉ် အလိုအလျောက် သန့်ရှင်းရေးလုပ်ပေးဖို့ နေ့စဉ်လုပ်ငန်းတစ်ခုကိုလည်း မှတ်ပုံတင်ခဲ့ပါတယ်။
ကုဒ်ယုတ္တိဗေဒကို နက်နက်ရှိုင်းရှိုင်း ခွဲခြမ်းစိတ်ဖြာခြင်း
လူအတော်များများက ဒီကုဒ်ကို ရှုပ်ထွေးတယ်လို့ ထင်ကြပေမယ့် တကယ်တော့ ယုတ္တိဗေဒက အတော်လေး ရိုးရှင်းပါတယ်။
- ပထမ ကွင်းဆက်: အချိန်တံဆိပ်ဖြင့် အလုပ်အားလုံးကို ထပ်ခါတလဲလဲလုပ်ဆောင်ပါ။
- ဒုတိယ ကွင်းဆက်ချိတ်အမည်ဖြင့် လုပ်ငန်းတာဝန်များကို စစ်ဆေးပါ။
- တတိယမြောက် ကွင်းဆက်လုပ်ငန်းလက်မှတ်နှင့် parameter များအလိုက် လုပ်ငန်းကို တစ်ခုပြီးတစ်ခု ရှင်းလင်းပါ။
ဤအဆင့်သုံးဆင့်ပါ nesting နည်းလမ်းသည် မမှန်ကန်သော လုပ်ငန်းတာဝန်တစ်ခုမျှ လွတ်သွားခြင်းမရှိစေရန် သေချာစေသည်။
နှင့် wp_unschedule_event() ဒါက WordPress မှ တရားဝင်အကြံပြုထားတဲ့ ဖယ်ရှားရေးနည်းလမ်းဖြစ်ပြီး ဒေတာဘေ့စ်ထဲက ဆက်စပ်မှတ်တမ်းတွေကိုလည်း သန့်ရှင်းရေးလုပ်ပေးပါလိမ့်မယ်။
လက်တွေ့အသုံးချမှု အခြေအနေများ
ဥပမာအားဖြင့်။
မင်းတစ်ခု တပ်ဆင်ပြီးပြီ SEO ဆိုသည်မှာ ပလပ်အင်က နေ့စဉ် ဆိုက်မြေပုံတစ်ခုကို ထုတ်ပေးပါတယ်။
နောက်ပိုင်းတွင် plugin ကို uninstall လုပ်လိုက်သော်လည်း ၎င်း၏ CRON အလုပ်မှာ ကျန်ရှိနေပါသည်။
ရလဒ်အနေနဲ့ WordPress ဟာ နေ့တိုင်း execute လုပ်ဖို့ကြိုးစားပါတယ်။ seo_generate_sitemap ဒီချိတ်။
လုပ်ဆောင်ချက် မရှိတော့သောကြောင့် စနစ်သည် အချည်းနှီးသာ လုပ်ဆောင်နိုင်သည်။
အထက်ပါကုဒ်ကိုဖွင့်ပါက ဤမမှန်ကန်သောလုပ်ဆောင်ချက်ကို နောက်တစ်နေ့တွင် အလိုအလျောက်ရှင်းလင်းပေးပါမည်။
စွမ်းဆောင်ရည်တိုးတက်မှုအကျိုးသက်ရောက်မှု
တကယ့်စမ်းသပ်မှုဒေတာအပေါ်အခြေခံ၍ အလိုအလျောက်သန့်ရှင်းရေးကိုဖွင့်ပြီးနောက် အလတ်စား WordPress ဝက်ဘ်ဆိုက်တစ်ခု (ပလပ်အင် ၅၀ ခန့်) ပေါ်လာသည်-
- ဒေတာဘေ့စ်မေးမြန်းချက်များ လျှော့ချထားသည် 12%။
- စာမျက်နှာတင်နှုန်း တိုးတက်လာသည် ၀.၃ စက္ကန့်။
- နေ့စဉ် မမှန်ကန်သော အလုပ်များကို လျှော့ချထားသည် ၂၀+။
ဤဒေတာများသည် WP Engine စွမ်းဆောင်ရည်အစီရင်ခံစာရှိ နှိုင်းယှဉ်စမ်းသပ်မှုများမှ လာပါသည်။
အကောင်းဆုံးလုပ်ဆောင်မှုများနှင့် အကောင်းဆုံးဖြစ်အောင်ပြုလုပ်ခြင်းဆိုင်ရာ အကြံပြုချက်များ
အလိုအလျောက် သန့်ရှင်းရေးလုပ်ခြင်းအပြင်၊ အကောင်းဆုံးဖြစ်အောင် လုပ်ဆောင်ရန် အကြံပြုချက်အချို့ကို ဖော်ပြပေးလိုက်ပါတယ်-
- CRON လုပ်ငန်းဆောင်တာများကို မှန်မှန်စစ်ဆေးပါWP Crontrol ကဲ့သို့သော plugin များကို အသုံးပြုခြင်းဖြင့် သင်သည် အလုပ်အားလုံးကို မြင်သာစွာ ကြည့်ရှုနိုင်သည်။
- မလိုအပ်တဲ့ plugin တွေကို လျှော့ချပါပလပ်အင်တစ်ခုကို ဖြုတ်လိုက်တဲ့အခါ ၎င်းရဲ့ အချိန်ဇယားဆွဲထားတဲ့ အလုပ်တွေကို ကိုယ်တိုင်ရှင်းပစ်တာ အကောင်းဆုံးပါပဲ။
- စနစ်အဆင့် Cron ကိုသုံးပါလူအသွားအလာများတဲ့ ဝက်ဘ်ဆိုက်တွေအတွက် WP-Cron ကို disable လုပ်ပြီး server ရဲ့ တကယ့် Cron server ကိုသုံးဖို့ အကြံပြုပါတယ်။
၎င်းသည် WP-Cron ၏ ဝင်ရောက်ခွင့် မှီခိုမှု ပြဿနာများကို ရှောင်ရှားပြီး ပိုမိုတည်ငြိမ်သည်။
နိဂုံးချုပ် - WordPress ကို သန့်ရှင်းသပ်ရပ်စွာ ထားရှိပါ။
WordPress ရဲ့ အချိန်ဇယားဆွဲထားတဲ့ အလုပ်တွေက တီးဝိုင်းတစ်ခုလိုပါပဲ။
ပလပ်အင်တစ်ခုစီသည် ဂီတပညာရှင်တစ်ဦးကဲ့သို့ဖြစ်ပြီး သဟဇာတဖြစ်သော တေးသွားတစ်ပုဒ်ကို ဖန်တီးရန် တစ်ဦးချင်းစီ၏ ကိုယ်ပိုင်အခန်းကဏ္ဍမှ ပါဝင်ဆောင်ရွက်ကြသည်။
ဒါပေမယ့် ဂီတပညာရှင်တွေ ထွက်သွားပေမယ့် တေးဂီတစာရွက်က ရှိနေသေးတယ်ဆိုရင်တော့ အဲဒါက ဆူညံသံပါပဲ။
မမှန်ကန်သော CRON အလုပ်များကို အလိုအလျောက်ဖယ်ရှားခြင်းသည် ဤဆူညံသံကို ဖယ်ရှားပေးပြီး စနစ်ကို သန့်ရှင်းသောနှုန်းထားဖြင့် လည်ပတ်နေစေပါသည်။
ဒီဂျစ်တယ်ခေတ်မှာ ထိရောက်မှုက အသက်ပဲ။
ဝဘ်ဆိုက်တစ်ခုရဲ့ စွမ်းဆောင်ရည်ဟာ ၎င်းရဲ့ ကောင်းမွန်တဲ့ front-end effect တွေပေါ်မှာသာမကဘဲ ၎င်းရဲ့ ဂရုတစိုက် back-end စီမံခန့်ခွဲမှုအပေါ်မှာလည်း မူတည်ပါတယ်။
ဒီကုဒ်ကို ကျွမ်းကျင်အောင်လုပ်ခြင်းအားဖြင့် WordPress ဟာ အလိုအလျောက် ပြန်လည်ကောင်းမွန်လာစေပါလိမ့်မယ်။
ဟီဂယ် တစ်ခါက ပြောခဲ့သလိုပါပဲ၊ "လွတ်လပ်မှုဆိုတာ ကိုယ်လုပ်ချင်တာကို လုပ်တာမျိုး မဟုတ်ဘဲ ကိုယ့်ကိုယ်ကိုယ် ထိန်းချုပ်နိုင်ခြင်းပါပဲ"။
WordPress ကို ကိုယ့်ကိုယ်ကိုယ် ထိန်းချုပ်နိုင်အောင် သင်ကြားပေးမှသာ လွတ်လပ်မှုရဲ့ စွမ်းအားကို အမှန်တကယ် ထုတ်ဖော်ပြသနိုင်မှာပါ။
မျှော်လင့်ခြင်း Chen Weiliang ဘလော့ဂ် ( https://www.chenweiliang.com/ ဤနေရာတွင် မျှဝေထားသော "WordPress Website Speed-Up Secrets: Automatically Remove Invalid CRON Scheduled Tasks" ဆောင်းပါးသည် သင့်အတွက် အထောက်အကူဖြစ်နိုင်ပါသည်။
ဤဆောင်းပါး၏ link ကိုမျှဝေရန်ကြိုဆိုပါတယ်:https://www.chenweiliang.com/cwl-33971.html
