ຄວາມລັບໃນການເລັ່ງເວັບໄຊທ໌ WordPress: ລຶບໜ້າວຽກ CRON ທີ່ບໍ່ຖືກຕ້ອງອອກໂດຍອັດຕະໂນມັດ

ສິ່ງທີ່ຮ້າຍແຮງທີ່ສຸດສຳລັບເວັບເຊີບເວີບໍ່ແມ່ນເວລາທີ່ບໍ່ເຮັດວຽກ, ແຕ່ເປັນການຖືກດຶງລົງໂດຍໜ້າວຽກທີ່ບໍ່ມີຄວາມໝາຍ.

WordPress ໃນໂລກຂອງ WP-Cron, ມັນຄືກັບໂມງທີ່ເບິ່ງບໍ່ເຫັນ, ກຳນົດເວລາວຽກງານຕ່າງໆຢ່າງງຽບໆ.

ໃນເບື້ອງຕົ້ນມັນເປັນເຄື່ອງມືທີ່ເປັນປະໂຫຍດ, ແຕ່ມັນມັກຈະກາຍເປັນຕົວຂ້າທີ່ເບິ່ງບໍ່ເຫັນທີ່ເຮັດໃຫ້ປະສິດທິພາບຊ້າລົງຍ້ອນ "ໜ້າວຽກຊອມບີ້" ທີ່ປະໄວ້ຫຼັງຈາກຖອນການຕິດຕັ້ງ plugins.

ລັກສະນະ ແລະ ອັນຕະລາຍທີ່ເຊື່ອງໄວ້ຂອງ WP-Cron

WP-Cron ບໍ່ແມ່ນ Cron ລະດັບລະບົບ, ແຕ່ແມ່ນກົນໄກການເຮັດວຽກທີ່ກຳນົດເວລາໄວ້ທີ່ຖືກຈຳລອງໂດຍ WordPress ເອງ.

ມັນພຽງແຕ່ກວດສອບວ່າມີໜ້າວຽກໃດໆທີ່ຕ້ອງປະຕິບັດເມື່ອຖືກກະຕຸ້ນໂດຍການເຂົ້າເຖິງຂອງຜູ້ໃຊ້.

ນີ້ໝາຍຄວາມວ່າຖ້າປລັກອິນລົງທະບຽນໜ້າວຽກປະຈຳວັນ, ໜ້າວຽກນັ້ນອາດຈະຍັງມີຢູ່ເຖິງແມ່ນວ່າປລັກອິນຈະຖືກຖອນການຕິດຕັ້ງກໍຕາມ.

ຜົນໄດ້ຮັບແມ່ນວ່າ WordPress ກຳລັງພະຍາຍາມປະຕິບັດ hook ທີ່ບໍ່ມີຢູ່ທຸກໆມື້.

ສິ່ງນີ້ບໍ່ພຽງແຕ່ເຮັດໃຫ້ເສຍຊັບພະຍາກອນເທົ່ານັ້ນ, ແຕ່ອາດຈະນໍາໄປສູ່ການສະສົມບັນທຶກທີ່ບໍ່ຖືກຕ້ອງໃນຖານຂໍ້ມູນໄດ້.

ອີງຕາມເອກະສານຢ່າງເປັນທາງການຂອງນັກພັດທະນາ WordPress, ການກຳນົດເວລາໜ້າວຽກຂອງ WP-Cron ແມ່ນຂຶ້ນກັບ... _get_cron_array() ເພື່ອດຶງເອົາໜ້າວຽກທີ່ລົງທະບຽນທັງໝົດ.

ຖ້າຟັງຊັນທີ່ສອດຄ້ອງກັບ hook ບໍ່ມີຢູ່ແລ້ວ, ລະບົບຍັງຈະພະຍາຍາມປະຕິບັດມັນ, ແຕ່ໃນທີ່ສຸດມັນຈະໝຸນໄປໂດຍບໍ່ມີຈຸດໝາຍປາຍທາງ.

ເປັນຫຍັງຈຶ່ງຕ້ອງເຮັດຄວາມສະອາດໜ້າວຽກທີ່ກຳນົດເວລາໄວ້ບໍ່ຖືກຕ້ອງ?

ລອງນຶກພາບເວັບໄຊທ໌ WordPress ຂອງທ່ານຄືກັບຫ້ອງການ.

ພະນັກງານເຂົ້າເຮັດວຽກຕາມເວລາທຸກໆມື້, ແຕ່ບາງຄົນໄດ້ອອກຈາກບໍລິສັດໄປແລ້ວ.

ເລກປະຈຳຕົວພະນັກງານຂອງເຂົາເຈົ້າຍັງຢູ່ໃນລະບົບ, ແລະ ເຄື່ອງລົງທະບຽນກຳລັງລໍຖ້າໃຫ້ເຂົາເຈົ້າຮູດບັດທຸກໆມື້.

ນີ້ແມ່ນການດຳເນີນງານ CRON ທີ່ບໍ່ຖືກຕ້ອງ.

ຖ້າບໍ່ໄດ້ເຮັດຄວາມສະອາດເປັນເວລາດົນ, ຖານຂໍ້ມູນຈະປະກອບມີ... wp_options ຕາຕະລາງຈະຖືກເຕັມ ແລະ ກາຍເປັນບໍ່ຖືກຕ້ອງ. _transient ຂໍ້ມູນ.

ຮ້າຍແຮງກວ່ານັ້ນ, ການກວດສອບທີ່ບໍ່ຖືກຕ້ອງເລື້ອຍໆເຮັດໃຫ້ພາລະການປະຕິບັດໃນ PHP ເພີ່ມຂຶ້ນ.

ການຄົ້ນຄວ້າຊີ້ໃຫ້ເຫັນວ່າຫຼາຍກວ່າ [ຈຳນວນ] ເວັບໄຊທ໌ WordPress ການສູນເສຍປະສິດທິພາບ 30%ນີ້ແມ່ນຍ້ອນວຽກ CRON ທີ່ບໍ່ຖືກຕ້ອງ ຫຼື ຊໍ້າຊ້ອນ (ແຫຼ່ງຂໍ້ມູນ: ການວິເຄາະດ້ານວິຊາການຂອງວາລະສານ Smashing).

ການປະຕິບັດລະຫັດສຳລັບການລຶບໜ້າວຽກທີ່ບໍ່ຖືກຕ້ອງໂດຍອັດຕະໂນມັດ

ການແກ້ໄຂແມ່ນຂ້ອນຂ້າງສະຫງ່າງາມ.

ຄວາມລັບໃນການເລັ່ງເວັບໄຊທ໌ WordPress: ລຶບໜ້າວຽກ CRON ທີ່ບໍ່ຖືກຕ້ອງອອກໂດຍອັດຕະໂນມັດ

ພວກເຮົາພຽງແຕ່ຕ້ອງການໃຊ້ສະຄຣິບກວດຈັບທຸກໆມື້ເພື່ອສະແກນໜ້າວຽກທີ່ກຳນົດເວລາໄວ້ທັງໝົດ, ແລະ ຖ້າມັນພົບວ່າຟັງຊັນທີ່ສອດຄ້ອງກັບ hook ບໍ່ມີຢູ່ແລ້ວ, ມັນຈະລຶບມັນອອກ.

ລະຫັດຟັງຊັນຕໍ່ໄປນີ້ສາມາດບັນລຸເປົ້າໝາຍນີ້ໄດ້:

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] ຖ້າມັນຫວ່າງເປົ່າ, ມັນໝາຍຄວາມວ່າບໍ່ມີຟັງຊັນທີ່ສອດຄ້ອງກັນສຳລັບ hook ນີ້.
  3. ລຶບໜ້າວຽກທີ່ບໍ່ຖືກຕ້ອງອອກ: ໂທ wp_unschedule_event() ລຶບໜ້າວຽກ.

ສຸດທ້າຍ, ມັນຍັງໄດ້ລົງທະບຽນໜ້າວຽກປະຈຳວັນເພື່ອຮັບປະກັນການທຳຄວາມສະອາດໂດຍອັດຕະໂນມັດທຸກໆມື້.

ການວິເຄາະຢ່າງເລິກເຊິ່ງກ່ຽວກັບເຫດຜົນຂອງລະຫັດ

ຫຼາຍຄົນພົບວ່າລະຫັດນີ້ສັບສົນ, ແຕ່ເຫດຜົນຕົວຈິງແລ້ວແມ່ນຂ້ອນຂ້າງງ່າຍດາຍ:

  • ວົງວຽນທຳອິດ: ເຮັດຊ້ຳໜ້າວຽກທັງໝົດຕາມເວລາ.
  • ວົງວຽນທີສອງກວດສອບໜ້າວຽກຕ່າງໆຕາມຊື່ຂອງ hook.
  • ວົງທີສາມທຳຄວາມສະອາດເທື່ອລະອັນຕາມລາຍເຊັນຂອງໜ້າວຽກ ແລະ ພາລາມິເຕີຕ່າງໆ.

ວິທີການວາງຊ້ອນກັນສາມລະດັບນີ້ຮັບປະກັນວ່າຈະບໍ່ມີໜ້າວຽກທີ່ບໍ່ຖືກຕ້ອງຖືກພາດໄປ.

ແລະ wp_unschedule_event() ນີ້ແມ່ນວິທີການລຶບທີ່ WordPress ແນະນຳຢ່າງເປັນທາງການ, ແລະມັນຍັງຈະເຮັດຄວາມສະອາດບັນທຶກທີ່ກ່ຽວຂ້ອງໃນຖານຂໍ້ມູນ.

ສະຖານະການຄໍາຮ້ອງສະຫມັກຕົວຈິງ

ຍົກ​ຕົວ​ຢ່າງ.

ທ່ານໄດ້ຕິດຕັ້ງອັນໜຶ່ງແລ້ວ SEO ປລັກອິນສ້າງແຜນຜັງເວັບໄຊທ໌ທຸກໆມື້.

ຕໍ່ມາທ່ານໄດ້ຖອນການຕິດຕັ້ງປລັກອິນ, ແຕ່ວຽກ CRON ຂອງມັນຍັງຄົງຢູ່.

ຜົນໄດ້ຮັບແມ່ນວ່າ WordPress ພະຍາຍາມປະຕິບັດທຸກໆມື້. seo_generate_sitemap ເບັດນີ້.

ເນື່ອງຈາກຟັງຊັນດັ່ງກ່າວບໍ່ມີຢູ່ແລ້ວ, ລະບົບຈຶ່ງສາມາດເຮັດວຽກໄດ້ໂດຍບໍ່ມີປະໂຫຍດ.

ຖ້າທ່ານເປີດໃຊ້ລະຫັດຂ້າງເທິງ, ໜ້າວຽກທີ່ບໍ່ຖືກຕ້ອງນີ້ຈະຖືກລຶບລ້າງໂດຍອັດຕະໂນມັດໃນມື້ຕໍ່ມາ.

ຜົນກະທົບໃນການປັບປຸງປະສິດທິພາບ

ອີງຕາມຂໍ້ມູນການທົດສອບຕົວຈິງ, ເວັບໄຊທ໌ WordPress ຂະໜາດກາງ (ປະມານ 50 ປລັກອິນ) ຫຼັງຈາກເປີດໃຊ້ການທຳຄວາມສະອາດອັດຕະໂນມັດ:

  • ການກວດສອບຖານຂໍ້ມູນຫຼຸດລົງ 12%.
  • ຄວາມໄວໃນການໂຫຼດໜ້າເວັບໄດ້ດີຂຶ້ນແລ້ວ 0.3 ວິນາທີ.
  • ວຽກງານທີ່ບໍ່ຖືກຕ້ອງປະຈຳວັນຫຼຸດລົງ 20+ ປີ.

ຂໍ້ມູນເຫຼົ່ານີ້ມາຈາກການທົດລອງປຽບທຽບໃນບົດລາຍງານປະສິດທິພາບຂອງ WP Engine.

ວິທີປະຕິບັດທີ່ດີທີ່ສຸດ ແລະ ຄຳແນະນຳກ່ຽວກັບການເພີ່ມປະສິດທິພາບ

ນອກເໜືອໄປຈາກການທຳຄວາມສະອາດອັດຕະໂນມັດແລ້ວ, ນີ້ແມ່ນຄຳແນະນຳບາງຢ່າງກ່ຽວກັບການເພີ່ມປະສິດທິພາບ:

  • ກວດກາການດຳເນີນງານຂອງ CRON ເປັນປະຈຳການໃຊ້ປລັກອິນຕ່າງໆເຊັ່ນ WP Crontrol, ທ່ານສາມາດເບິ່ງໜ້າວຽກທັງໝົດໄດ້.
  • ຫຼຸດຜ່ອນ plugins ທີ່ຊໍ້າຊ້ອນເມື່ອຖອນການຕິດຕັ້ງປລັກອິນ, ທ່ານຄວນລຶບລ້າງໜ້າວຽກທີ່ກຳນົດເວລາໄວ້ດ້ວຍຕົນເອງ.
  • ໃຊ້ Cron ລະດັບລະບົບສຳລັບເວັບໄຊທ໌ທີ່ມີການເຂົ້າຊົມສູງ, ແນະນຳໃຫ້ປິດ WP-Cron ແລະ ໃຊ້ເຊີບເວີ Cron ຕົວຈິງຂອງເຊີບເວີແທນ.

ສິ່ງນີ້ຊ່ວຍຫຼີກລ່ຽງບັນຫາການເພິ່ງພາການເຂົ້າເຖິງຂອງ WP-Cron ແລະມີຄວາມໝັ້ນຄົງຫຼາຍຂຶ້ນ.

ສະຫຼຸບ: ຮັກສາ WordPress ໃຫ້ຢູ່ໃນຈັງຫວະທີ່ສະອາດ

ໜ້າວຽກທີ່ກຳນົດເວລາໄວ້ຂອງ WordPress ແມ່ນຄືກັບວົງດົນຕີ.

ປລັກອິນແຕ່ລະອັນແມ່ນຄືກັບນັກດົນຕີ, ແຕ່ລະຄົນມີບົດບາດຂອງຕົນເອງເພື່ອສ້າງທຳນອງທີ່ປະສານສົມທົບກັນ.

ແຕ່ຖ້ານັກດົນຕີໄດ້ອອກໄປແລ້ວ ແຕ່ແຜ່ນເພງຍັງຢູ່ທີ່ນັ້ນ, ນັ້ນກໍ່ເປັນພຽງສຽງລົບກວນ.

ການລຶບວຽກ CRON ທີ່ບໍ່ຖືກຕ້ອງໂດຍອັດຕະໂນມັດຈະເຮັດຄວາມສະອາດສິ່ງລົບກວນນີ້, ເຮັດໃຫ້ລະບົບເຮັດວຽກໃນຈັງຫວະທີ່ສະອາດ.

ໃນຍຸກດິຈິຕອນ, ປະສິດທິພາບແມ່ນຊີວິດ.

ປະສິດທິພາບຂອງເວັບໄຊທ໌ບໍ່ພຽງແຕ່ຂຶ້ນກັບຜົນກະທົບດ້ານໜ້າທີ່ດີເລີດເທົ່ານັ້ນ, ແຕ່ຍັງຂຶ້ນກັບການຄຸ້ມຄອງດ້ານຫຼັງຢ່າງລະອຽດອີກດ້ວຍ.

ການເປັນແມ່ບົດໃນລະຫັດນີ້ຈະຊ່ວຍໃຫ້ທ່ານມີຄວາມສາມາດໃນການຮັກສາຕົນເອງຂອງ WordPress.

ດັ່ງທີ່ Hegel ເຄີຍກ່າວໄວ້ວ່າ, "ອິດສະລະພາບບໍ່ແມ່ນການເຮັດສິ່ງໃດກໍ່ຕາມທີ່ເຈົ້າຕ້ອງການ, ແຕ່ແມ່ນການຍັບຍັ້ງຕົນເອງ."

ພຽງແຕ່ການສອນ WordPress ຂອງທ່ານໃຫ້ມີວິໄນໃນຕົນເອງເທົ່ານັ້ນທີ່ເຈົ້າສາມາດປົດປ່ອຍພະລັງຂອງອິດສະລະພາບໄດ້ຢ່າງແທ້ຈິງ.

ຫວັງ Chen Weiliang Blog ( https://www.chenweiliang.com/ ບົດຄວາມ "ຄວາມລັບໃນການເລັ່ງຄວາມໄວເວັບໄຊທ໌ WordPress: ລຶບໜ້າວຽກທີ່ກຳນົດເວລາໄວ້ບໍ່ຖືກຕ້ອງຂອງ CRON ໂດຍອັດຕະໂນມັດ" ທີ່ແບ່ງປັນຢູ່ນີ້ອາດຈະເປັນປະໂຫຍດຕໍ່ທ່ານ.

ຍິນດີຕ້ອນຮັບແບ່ງປັນການເຊື່ອມຕໍ່ຂອງບົດຄວາມນີ້:https://www.chenweiliang.com/cwl-33971.html

ເພື່ອປົດລັອກເຄັດລັບທີ່ເຊື່ອງໄວ້ເພີ່ມເຕີມ🔑, ຍິນດີຕ້ອນຮັບເຂົ້າສູ່ຊ່ອງ Telegram ຂອງພວກເຮົາ!

Share and like ຖ້າທ່ານມັກມັນ! ການແບ່ງປັນ ແລະຖືກໃຈຂອງເຈົ້າເປັນແຮງຈູງໃຈຢ່າງຕໍ່ເນື່ອງຂອງພວກເຮົາ!

 

评论评论

ທີ່ຢູ່ອີເມວຂອງເຈົ້າຈະບໍ່ຖືກເຜີຍແຜ່. ທົ່ງນາທີ່ກໍານົດໄວ້ແມ່ນຖືກນໍາໃຊ້ * ປ້າຍ ກຳ ກັບ

ລາຍການຫົວເລື່ອງ
ເລື່ອນໄປທາງເທີງ