{"id":5732,"date":"2026-09-22T16:16:36","date_gmt":"2026-09-22T13:16:36","guid":{"rendered":"https:\/\/www.dchost.com\/blog\/?p=5732"},"modified":"2026-09-22T06:26:15","modified_gmt":"2026-09-22T03:26:15","slug":"woocommerce-action-scheduler-kuyrugu-neden-birikiyor","status":"publish","type":"post","link":"https:\/\/www.dchost.com\/blog\/woocommerce-action-scheduler-kuyrugu-neden-birikiyor\/","title":{"rendered":"WooCommerce Action Scheduler Kuyru\u011fu Neden Birikiyor?"},"content":{"rendered":"<div class=\"dchost-blog-content-wrapper\"><div class=\"aiw-summary\">\n<p class=\"aiw-box-title\">H\u0131zl\u0131 \u00f6zet<\/p>\n<p>WooCommerce Action Scheduler kuyru\u011fu, planl\u0131 g\u00f6revler zaman\u0131nda \u00e7al\u0131\u015fmad\u0131\u011f\u0131nda veya g\u00f6rev i\u015fleyicileri \u00fcretilen i\u015f miktar\u0131n\u0131 kar\u015f\u0131layamad\u0131\u011f\u0131nda birikir. \u00d6nce bekleyen, ba\u015far\u0131s\u0131z ve s\u00fcresi ge\u00e7mi\u015f g\u00f6revleri ay\u0131r\u0131n; ard\u0131ndan WP-Cron, sunucu cron&#8217;u, veritaban\u0131 ve g\u00f6revi olu\u015fturan eklentiyi ayr\u0131 ayr\u0131 kontrol edin.<\/p>\n<ul>\n<li>Bekleyen g\u00f6revlerin artmas\u0131, tek ba\u015f\u0131na sunucu CPU&#8217;sunun yetersiz oldu\u011funu g\u00f6stermez; cron tetikleyicisi, loopback iste\u011fi veya uzun s\u00fcren bir callback de darbo\u011faz yaratabilir.<\/li>\n<li>WP-CLI ile kuyru\u011fu \u00e7al\u0131\u015ft\u0131rmak, te\u015fhis ve kontroll\u00fc bo\u015faltma i\u00e7in daha \u00f6ng\u00f6r\u00fclebilir bir y\u00f6ntemdir. CLI i\u015flemi HTTP iste\u011fi yapmad\u0131k\u00e7a PHP-FPM web i\u015f\u00e7isi t\u00fcketmez.<\/li>\n<li>Ba\u015far\u0131s\u0131z g\u00f6revlerde \u00f6nce hata mesaj\u0131n\u0131 ve ilgili hook&#8217;u inceleyin. G\u00f6revleri topluca silmek, stok, e-posta veya entegrasyon verilerinin kaybolmas\u0131na yol a\u00e7abilir.<\/li>\n<li>Ge\u00e7ici olarak biriken kuyruk ile her g\u00fcn yeniden b\u00fcy\u00fcyen kuyru\u011fun \u00e7\u00f6z\u00fcm\u00fc farkl\u0131d\u0131r. \u0130kinci durumda g\u00f6revi \u00fcreten eklenti, tekrar deneme davran\u0131\u015f\u0131 veya kapasite s\u0131n\u0131r\u0131 ara\u015ft\u0131r\u0131lmal\u0131d\u0131r.<\/li>\n<\/ul>\n<\/div>\n<p>WooCommerce sipari\u015fleri olu\u015fuyor, ancak planl\u0131 e-postalar g\u00f6nderilmiyor, stok senkronizasyonu gecikiyor veya web kancalar\u0131 saatlerce bekliyorsa Action Scheduler kuyru\u011funu kontrol etmeniz gerekir. Y\u00f6netim panelindeki g\u00f6rev say\u0131s\u0131 y\u00fckselirken sunucu kaynaklar\u0131 normal g\u00f6r\u00fcnebilir; \u00e7\u00fcnk\u00fc sorun bazen \u00e7al\u0131\u015fan i\u015flemin CPU kullan\u0131m\u0131 de\u011fil, i\u015flerin hi\u00e7 tetiklenmemesi veya bir g\u00f6revde uzun s\u00fcre tak\u0131lmas\u0131d\u0131r.<\/p>\n<p>Action Scheduler, WordPress eklentilerinin i\u015fleri hemen yapmak yerine ileri bir zamana planlamas\u0131n\u0131 sa\u011flayan bir g\u00f6rev kuyru\u011fu k\u00fct\u00fcphanesidir. WooCommerce ve eklentileri bu yap\u0131y\u0131 e-posta, stok, abonelik, web kancas\u0131 ve d\u0131\u015f servis senkronizasyonlar\u0131nda kullanabilir. Kuyru\u011fu d\u00fczeltmek i\u00e7in yaln\u0131zca cron aral\u0131\u011f\u0131n\u0131 k\u0131saltmak yerine hangi a\u015faman\u0131n aksad\u0131\u011f\u0131n\u0131 bulman\u0131z gerekir.<\/p>\n<div id=\"toc_container\" role=\"navigation\" aria-label=\"Table of Contents\" data-nosnippet class=\"toc_transparent no_bullets toc_numbered toc_title_center\"><p class=\"toc_title\">\u0130\u00e7indekiler<\/p><ul class=\"toc_list\"><li><a href=\"#Action_Scheduler_kuyrugu_nasil_calisir\"><span class=\"toc_number toc_depth_1\">1.<\/span> Action Scheduler kuyru\u011fu nas\u0131l \u00e7al\u0131\u015f\u0131r?<\/a><\/li><li><a href=\"#Biriken_kuyrugun_belirtileri_ve_anlamlari\"><span class=\"toc_number toc_depth_1\">2.<\/span> Biriken kuyru\u011fun belirtileri ve anlamlar\u0131<\/a><ul><li><a href=\"#Pending_sayisi_surekli_yukseliyor\"><span class=\"toc_number toc_depth_2\">2.1.<\/span> Pending say\u0131s\u0131 s\u00fcrekli y\u00fckseliyor<\/a><\/li><li><a href=\"#Failed_gorevleri_artiyor\"><span class=\"toc_number toc_depth_2\">2.2.<\/span> Failed g\u00f6revleri art\u0131yor<\/a><\/li><li><a href=\"#Planli_e-postalar_ve_web_kancalari_gecikiyor\"><span class=\"toc_number toc_depth_2\">2.3.<\/span> Planl\u0131 e-postalar ve web kancalar\u0131 gecikiyor<\/a><\/li><li><a href=\"#Yonetim_paneli_yavasliyor_veya_zaman_asimina_ugruyor\"><span class=\"toc_number toc_depth_2\">2.4.<\/span> Y\u00f6netim paneli yava\u015fl\u0131yor veya zaman a\u015f\u0131m\u0131na u\u011fruyor<\/a><\/li><\/ul><\/li><li><a href=\"#Once_teshis_Hangi_tur_gorev_birikiyor\"><span class=\"toc_number toc_depth_1\">3.<\/span> \u00d6nce te\u015fhis: Hangi t\u00fcr g\u00f6rev birikiyor?<\/a><ul><li><a href=\"#Yonetim_panelinden_ilk_kontrol\"><span class=\"toc_number toc_depth_2\">3.1.<\/span> Y\u00f6netim panelinden ilk kontrol<\/a><\/li><li><a href=\"#WP-CLI_ile_durum_ve_zaman_kontrolu\"><span class=\"toc_number toc_depth_2\">3.2.<\/span> WP-CLI ile durum ve zaman kontrol\u00fc<\/a><\/li><\/ul><\/li><li><a href=\"#Action_Scheduler_kuyrugu_neden_birikir\"><span class=\"toc_number toc_depth_1\">4.<\/span> Action Scheduler kuyru\u011fu neden birikir?<\/a><ul><li><a href=\"#WP-Cron_veya_sunucu_cron8217u_calismiyordur\"><span class=\"toc_number toc_depth_2\">4.1.<\/span> WP-Cron veya sunucu cron&#8217;u \u00e7al\u0131\u015fm\u0131yordur<\/a><\/li><li><a href=\"#Loopback_veya_HTTP_cagrisi_engelleniyordur\"><span class=\"toc_number toc_depth_2\">4.2.<\/span> Loopback veya HTTP \u00e7a\u011fr\u0131s\u0131 engelleniyordur<\/a><\/li><li><a href=\"#Bir_callback_uzun_suruyor_veya_kilitleniyordur\"><span class=\"toc_number toc_depth_2\">4.3.<\/span> Bir callback uzun s\u00fcr\u00fcyor veya kilitleniyordur<\/a><\/li><li><a href=\"#Uretim_hizi_tuketim_hizini_geciyordur\"><span class=\"toc_number toc_depth_2\">4.4.<\/span> \u00dcretim h\u0131z\u0131 t\u00fcketim h\u0131z\u0131n\u0131 ge\u00e7iyordur<\/a><\/li><li><a href=\"#Veritabani_ve_sunucu_kapasitesi_sinirdadir\"><span class=\"toc_number toc_depth_2\">4.5.<\/span> Veritaban\u0131 ve sunucu kapasitesi s\u0131n\u0131rdad\u0131r<\/a><\/li><\/ul><\/li><li><a href=\"#Dar_kapsamli_duzeltme_nasil_yapilir\"><span class=\"toc_number toc_depth_1\">5.<\/span> Dar kapsaml\u0131 d\u00fczeltme nas\u0131l yap\u0131l\u0131r?<\/a><ul><li><a href=\"#Cron_tetikleyicisini_duzeltin\"><span class=\"toc_number toc_depth_2\">5.1.<\/span> Cron tetikleyicisini d\u00fczeltin<\/a><\/li><li><a href=\"#Basarisiz_hook8217u_izole_edin\"><span class=\"toc_number toc_depth_2\">5.2.<\/span> Ba\u015far\u0131s\u0131z hook&#8217;u izole edin<\/a><\/li><li><a href=\"#Tuketim_hizini_kontrollu_artirin\"><span class=\"toc_number toc_depth_2\">5.3.<\/span> T\u00fcketim h\u0131z\u0131n\u0131 kontroll\u00fc art\u0131r\u0131n<\/a><\/li><\/ul><\/li><li><a href=\"#Eski_kayitlar_nasil_temizlenir\"><span class=\"toc_number toc_depth_1\">6.<\/span> Eski kay\u0131tlar nas\u0131l temizlenir?<\/a><\/li><li><a href=\"#Degisikligin_ise_yaradigini_nasil_dogrularsiniz\"><span class=\"toc_number toc_depth_1\">7.<\/span> De\u011fi\u015fikli\u011fin i\u015fe yarad\u0131\u011f\u0131n\u0131 nas\u0131l do\u011frulars\u0131n\u0131z?<\/a><\/li><li><a href=\"#Sik_Sorulan_Sorular\"><span class=\"toc_number toc_depth_1\">8.<\/span> S\u0131k Sorulan Sorular<\/a><ul><li><a href=\"#Action_Scheduler_kuyrugunu_elle_calistirmak_guvenli_mi\"><span class=\"toc_number toc_depth_2\">8.1.<\/span> Action Scheduler kuyru\u011funu elle \u00e7al\u0131\u015ft\u0131rmak g\u00fcvenli mi?<\/a><\/li><li><a href=\"#Pending_gorev_sayisi_yuksekse_site_mutlaka_yavaslar_mi\"><span class=\"toc_number toc_depth_2\">8.2.<\/span> Pending g\u00f6rev say\u0131s\u0131 y\u00fcksekse site mutlaka yava\u015flar m\u0131?<\/a><\/li><li><a href=\"#WP-Cron8217u_tamamen_kapatmak_dogru_mudur\"><span class=\"toc_number toc_depth_2\">8.3.<\/span> WP-Cron&#8217;u tamamen kapatmak do\u011fru mudur?<\/a><\/li><li><a href=\"#Basarisiz_gorevleri_yeniden_denemeden_once_neye_bakmaliyim\"><span class=\"toc_number toc_depth_2\">8.4.<\/span> Ba\u015far\u0131s\u0131z g\u00f6revleri yeniden denemeden \u00f6nce neye bakmal\u0131y\u0131m?<\/a><\/li><\/ul><\/li><li><a href=\"#Uygulanabilir_kontrol_listesi\"><span class=\"toc_number toc_depth_1\">9.<\/span> Uygulanabilir kontrol listesi<\/a><\/li><\/ul><\/div>\n<h2><span id=\"Action_Scheduler_kuyrugu_nasil_calisir\">Action Scheduler kuyru\u011fu nas\u0131l \u00e7al\u0131\u015f\u0131r?<\/span><\/h2>\n<p>Bir eklenti, \u00f6rne\u011fin bir sipari\u015ften sonra web kancas\u0131 g\u00f6ndermek istedi\u011finde Action Scheduler tablosuna bir action kaydeder. Kayd\u0131n hook ad\u0131, planlanan zaman\u0131, durumu ve deneme bilgileri tutulur. Bir runner, yani g\u00f6rev i\u015fleyicisi, zaman\u0131 gelen kay\u0131tlar\u0131 al\u0131r ve ilgili PHP callback&#8217;ini \u00e7al\u0131\u015ft\u0131r\u0131r.<\/p>\n<p>Bu i\u015flem iki ayr\u0131 par\u00e7adan olu\u015fur. \u0130lk par\u00e7a g\u00f6revlerin kuyru\u011fa yaz\u0131lmas\u0131d\u0131r. \u0130kinci par\u00e7a ise kay\u0131tlar\u0131n se\u00e7ilip \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131d\u0131r. G\u00f6revler do\u011fru bi\u00e7imde olu\u015fuyor, fakat runner \u00e7al\u0131\u015fm\u0131yorsa pending, yani bekleyen kay\u0131tlar artar. Runner \u00e7al\u0131\u015f\u0131yor, fakat callback hata veriyorsa failed, yani ba\u015far\u0131s\u0131z kay\u0131tlar \u00e7o\u011fal\u0131r.<\/p>\n<p>Action Scheduler genellikle WordPress cron&#8217;u, siteye gelen isteklerle tetiklenen zamanlay\u0131c\u0131lar veya WP-CLI gibi bir y\u00f6ntem \u00fczerinden \u00e7al\u0131\u015ft\u0131r\u0131labilir. WordPress cron ger\u00e7ek bir i\u015fletim sistemi zamanlay\u0131c\u0131s\u0131 de\u011fildir; \u00e7o\u011fu kurulumda ziyaret\u00e7i iste\u011fi geldi\u011finde kontrol edilir. D\u00fc\u015f\u00fck trafikli bir ma\u011fazada planl\u0131 g\u00f6revlerin gecikmesinin nedeni bu olabilir.<\/p>\n<p>WP-CLI ile \u00e7al\u0131\u015fan bir kuyruk i\u015f\u00e7isi komut sat\u0131r\u0131nda ayr\u0131 bir PHP s\u00fcrecidir. HTTP iste\u011fi yapmad\u0131\u011f\u0131 s\u00fcrece PHP-FPM web i\u015f\u00e7isi t\u00fcketmez. Bu ayr\u0131m \u00f6nemlidir: Kuyru\u011fu h\u0131zland\u0131rmak i\u00e7in PHP-FPM \u00e7ocuk s\u00fcre\u00e7lerini art\u0131rmak, as\u0131l sorun CLI cron&#8217;un \u00e7al\u0131\u015fmamas\u0131ysa \u00e7\u00f6z\u00fcm getirmez.<\/p>\n<div class=\"aiw-note aiw-note-example\">\n<p class=\"aiw-box-title\">\u00d6rnek senaryo<\/p>\n<p>Varsayal\u0131m ki bir ma\u011fazada trafik yaln\u0131zca g\u00fcn i\u00e7inde yo\u011funla\u015f\u0131yor ve sunucu cron&#8217;u tan\u0131ml\u0131 de\u011fil. Sipari\u015f sonras\u0131 g\u00f6revler kuyru\u011fa yaz\u0131l\u0131yor, ancak gece yeni bir HTTP iste\u011fi gelmedi\u011fi i\u00e7in runner \u00e7al\u0131\u015fm\u0131yor. Sabah y\u00f6netim paneli a\u00e7\u0131ld\u0131\u011f\u0131nda baz\u0131 g\u00f6revler birden i\u015fleniyor; g\u00f6zlenen gecikme veritaban\u0131 yo\u011funlu\u011fundan de\u011fil, tetikleme modelinden kaynaklan\u0131yor.<\/p>\n<\/div>\n<h2><span id=\"Biriken_kuyrugun_belirtileri_ve_anlamlari\">Biriken kuyru\u011fun belirtileri ve anlamlar\u0131<\/span><\/h2>\n<h3><span id=\"Pending_sayisi_surekli_yukseliyor\">Pending say\u0131s\u0131 s\u00fcrekli y\u00fckseliyor<\/span><\/h3>\n<p>Pending g\u00f6revlerin say\u0131s\u0131 art\u0131yor ve en eski planlanma zaman\u0131 ge\u00e7mi\u015fte kal\u0131yorsa runner yeterince s\u0131k \u00e7al\u0131\u015fm\u0131yor, g\u00f6revleri yeterli h\u0131zda t\u00fcketemiyor veya bir g\u00f6rev grubu s\u00fcrekli yeni i\u015fler \u00fcretiyor olabilir. \u00d6nce toplam say\u0131ya de\u011fil, en eski g\u00f6revin ya\u015f\u0131na ve g\u00f6revlerin hangi hook&#8217;larda topland\u0131\u011f\u0131na bak\u0131n.<\/p>\n<p>Tek bir \u00fcr\u00fcn senkronizasyonu veya web kancas\u0131 hook&#8217;u y\u00fczlerce bekleyen kay\u0131t olu\u015fturuyorsa sorun genel WooCommerce performans\u0131ndan \u00e7ok ilgili entegrasyonda olabilir. Ayn\u0131 g\u00f6rev ba\u015far\u0131s\u0131z olup yeniden planlan\u0131yorsa kuyruk, i\u015flenen h\u0131zdan daha h\u0131zl\u0131 b\u00fcy\u00fcr.<\/p>\n<h3><span id=\"Failed_gorevleri_artiyor\">Failed g\u00f6revleri art\u0131yor<\/span><\/h3>\n<p>Failed kay\u0131tlar, runner&#8217;\u0131n en az\u0131ndan g\u00f6revi denemeye ba\u015flad\u0131\u011f\u0131n\u0131 g\u00f6sterir; fakat callback ba\u015far\u0131yla tamamlanmam\u0131\u015ft\u0131r. Hata mesaj\u0131nda uzak API yan\u0131t\u0131, kimlik do\u011frulama, zaman a\u015f\u0131m\u0131, PHP istisnas\u0131 veya veritaban\u0131 hatas\u0131 bulunabilir. Sadece failed kay\u0131tlar\u0131 silmek, hatan\u0131n sonraki sipari\u015flerde yeniden olu\u015fmas\u0131n\u0131 engellemez.<\/p>\n<h3><span id=\"Planli_e-postalar_ve_web_kancalari_gecikiyor\">Planl\u0131 e-postalar ve web kancalar\u0131 gecikiyor<\/span><\/h3>\n<p>Action Scheduler e-postan\u0131n SMTP veya teslimat garantisini tek ba\u015f\u0131na sa\u011flamaz. Kuyruk g\u00f6revi ba\u015far\u0131l\u0131 g\u00f6r\u00fcnse bile mail sunucusu, DNS, al\u0131c\u0131 politikas\u0131 veya uygulama yap\u0131land\u0131rmas\u0131 nedeniyle teslimat gecikebilir. \u00d6nce ilgili action&#8217;\u0131n \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131, ard\u0131ndan e-posta katman\u0131n\u0131 inceleyin. E-posta teslim zincirini ayr\u0131ca de\u011ferlendirmek i\u00e7in <a href=\"https:\/\/www.dchost.com\/blog\/wordpress-ve-woocommerce-icin-transactional-e-posta-altyapisi\/\">WooCommerce transactional e-posta altyap\u0131s\u0131<\/a> konusunu kullanabilirsiniz.<\/p>\n<h3><span id=\"Yonetim_paneli_yavasliyor_veya_zaman_asimina_ugruyor\">Y\u00f6netim paneli yava\u015fl\u0131yor veya zaman a\u015f\u0131m\u0131na u\u011fruyor<\/span><\/h3>\n<p>Scheduled Actions ekran\u0131 \u00e7ok say\u0131da kay\u0131tla \u00e7al\u0131\u015f\u0131rken sorgu ve sayfalama y\u00fck\u00fc olu\u015fturabilir. Bu durum do\u011frudan t\u00fcm ma\u011fazan\u0131n yava\u015f oldu\u011fu anlam\u0131na gelmez. Panel sorgular\u0131 a\u011f\u0131rsa g\u00f6revleri panelden topluca \u00e7al\u0131\u015ft\u0131rmak yerine komut sat\u0131r\u0131nda kontroll\u00fc batch boyutlar\u0131yla ilerlemek daha g\u00fcvenlidir.<\/p>\n<h2><span id=\"Once_teshis_Hangi_tur_gorev_birikiyor\">\u00d6nce te\u015fhis: Hangi t\u00fcr g\u00f6rev birikiyor?<\/span><\/h2>\n<p>Veri de\u011fi\u015ftiren bir temizlik veya yeniden deneme i\u015flemine ge\u00e7meden \u00f6nce veritaban\u0131 yede\u011fi al\u0131n ve m\u00fcmk\u00fcnse son geri d\u00f6n\u00fc\u015f noktas\u0131n\u0131 do\u011frulay\u0131n. Canl\u0131 ma\u011fazada stok, sipari\u015f ve \u00f6deme s\u00fcre\u00e7lerini etkileyebilecek g\u00f6revlerde bak\u0131m zaman aral\u0131\u011f\u0131 belirleyin. Te\u015fhis i\u00e7in g\u00f6revi silmek veya hook&#8217;u devre d\u0131\u015f\u0131 b\u0131rakmak gerekmez.<\/p>\n<h3><span id=\"Yonetim_panelinden_ilk_kontrol\">Y\u00f6netim panelinden ilk kontrol<\/span><\/h3>\n<p>WooCommerce veya WordPress y\u00f6netim alan\u0131nda Scheduled Actions ekran\u0131n\u0131 a\u00e7\u0131n. Pending, in-progress, complete, failed ve canceled durumlar\u0131n\u0131 ayr\u0131 inceleyin. A\u015fa\u011f\u0131daki sorular h\u0131zl\u0131 bir s\u0131n\u0131fland\u0131rma sa\u011flar:<\/p>\n<ul>\n<li>En eski pending g\u00f6revin planlanan zaman\u0131 ne kadar ge\u00e7mi\u015f?<\/li>\n<li>Bekleyen g\u00f6revler tek bir hook alt\u0131nda m\u0131, yoksa bir\u00e7ok eklentiye mi da\u011f\u0131lm\u0131\u015f?<\/li>\n<li>Failed kay\u0131tlar\u0131nda ayn\u0131 hata veya ayn\u0131 d\u0131\u015f servis tekrarlan\u0131yor mu?<\/li>\n<li>G\u00f6revler \u00e7al\u0131\u015f\u0131yor fakat yeni g\u00f6revler daha h\u0131zl\u0131 m\u0131 ekleniyor?<\/li>\n<li>Bir g\u00f6revin arg\u00fcmanlar\u0131 ayn\u0131 nesne veya sipari\u015f i\u00e7in tekrar tekrar m\u0131 olu\u015fuyor?<\/li>\n<\/ul>\n<p>Panelde bir g\u00f6revi elle \u00e7al\u0131\u015ft\u0131rmadan \u00f6nce hook ad\u0131n\u0131 ve sa\u011flayan eklentiyi not edin. \u00d6zellikle stok, \u00fccret iadesi, abonelik ve web kancas\u0131 g\u00f6revleri yan etki yaratabilir; ayn\u0131 i\u015fi bilin\u00e7sizce tekrar \u00e7al\u0131\u015ft\u0131rmak d\u0131\u015f sisteme yinelenen bildirim g\u00f6nderebilir.<\/p>\n<h3><span id=\"WP-CLI_ile_durum_ve_zaman_kontrolu\">WP-CLI ile durum ve zaman kontrol\u00fc<\/span><\/h3>\n<p>SSH eri\u015fiminiz, do\u011fru WordPress kurulum yolu ve site kullan\u0131c\u0131s\u0131n\u0131n gerekli dosya izinleri varsa WP-CLI ile daha ayr\u0131nt\u0131l\u0131 \u00e7\u0131kt\u0131 alabilirsiniz. A\u015fa\u011f\u0131daki komutlar listeleme ve WordPress cron durumunu kontrol etme ama\u00e7l\u0131d\u0131r:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">cd \/var\/www\/example.com\nwp action-scheduler list --status=pending --per-page=20\nwp action-scheduler list --status=failed --per-page=20\nwp cron event list<\/code><\/pre>\n<p>Buradaki yol \u00f6rnektir; kendi WordPress kurulum dizininizi kullan\u0131n. Komutun bulunmamas\u0131 Action Scheduler&#8217;\u0131n eski bir s\u00fcr\u00fcm\u00fcn\u00fc, WP-CLI uzant\u0131s\u0131n\u0131n etkin olmamas\u0131n\u0131 veya farkl\u0131 bir komut ad\u0131n\u0131 g\u00f6sterebilir. \u00d6nce eklenti ve WP-CLI s\u00fcr\u00fcmlerini do\u011frulay\u0131n; rastgele bir eklentiyi kald\u0131rarak \u00e7\u00f6z\u00fcm aramay\u0131n.<\/p>\n<p>Pending listesinde planlanan zaman, hook ve grup bilgilerini; failed listesinde hata ayr\u0131nt\u0131lar\u0131n\u0131 kar\u015f\u0131la\u015ft\u0131r\u0131n. Ayn\u0131 hook&#8217;un her \u00e7al\u0131\u015ft\u0131rmada yeni kay\u0131t \u00fcretip \u00fcretmedi\u011fini de g\u00f6zlemleyin. Bu g\u00f6zlem, tetikleme sorunu ile callback sorunu aras\u0131ndaki fark\u0131 belirler.<\/p>\n<h2><span id=\"Action_Scheduler_kuyrugu_neden_birikir\">Action Scheduler kuyru\u011fu neden birikir?<\/span><\/h2>\n<h3><span id=\"WP-Cron_veya_sunucu_cron8217u_calismiyordur\">WP-Cron veya sunucu cron&#8217;u \u00e7al\u0131\u015fm\u0131yordur<\/span><\/h3>\n<p>WordPress cron&#8217;u devre d\u0131\u015f\u0131 b\u0131rak\u0131lm\u0131\u015f olabilir. Baz\u0131 y\u00f6neticiler WP-Cron&#8217;un ziyaret\u00e7i iste\u011fine ba\u011fl\u0131 davran\u0131\u015f\u0131n\u0131 \u00f6nlemek i\u00e7in <code>wp-config.php<\/code> i\u00e7inde <code>DISABLE_WP_CRON<\/code> kullan\u0131r. Bu tercih, yerine i\u015fletim sistemi cron&#8217;u tan\u0131mlanmad\u0131ysa Action Scheduler dahil planl\u0131 i\u015flerin durmas\u0131na yol a\u00e7ar.<\/p>\n<p>Sunucu cron&#8217;u tan\u0131ml\u0131 olsa bile yanl\u0131\u015f PHP binary&#8217;si, yanl\u0131\u015f WordPress yolu, farkl\u0131 kullan\u0131c\u0131 izinleri veya \u00e7al\u0131\u015fma dizini nedeniyle komut ba\u015far\u0131s\u0131z olabilir. Cron \u00e7\u0131kt\u0131s\u0131n\u0131 ve sistem loglar\u0131n\u0131 kontrol etmeden aral\u0131\u011f\u0131 s\u0131kla\u015ft\u0131rmay\u0131n.<\/p>\n<h3><span id=\"Loopback_veya_HTTP_cagrisi_engelleniyordur\">Loopback veya HTTP \u00e7a\u011fr\u0131s\u0131 engelleniyordur<\/span><\/h3>\n<p>Web tabanl\u0131 runner, ayn\u0131 siteye loopback ad\u0131 verilen i\u00e7 HTTP iste\u011fi g\u00f6nderebilir. G\u00fcvenlik eklentisi, temel kimlik do\u011frulama, WAF, DNS \u00e7\u00f6z\u00fcmlemesi, TLS do\u011frulamas\u0131 veya sunucu kural\u0131 bu iste\u011fi engellerse panel normal g\u00f6r\u00fcnse bile g\u00f6revler \u00e7al\u0131\u015fmayabilir. WordPress Site Health i\u00e7indeki loopback uyar\u0131s\u0131n\u0131 ve web sunucusu eri\u015fim loglar\u0131n\u0131 birlikte inceleyin.<\/p>\n<p>\u0130zleme u\u00e7 noktas\u0131n\u0131 etkinle\u015ftirmek ile web sunucusunda bu u\u00e7 noktaya g\u00fcvenli eri\u015fim yolu tan\u0131mlamak ayr\u0131 i\u015flemlerdir. Bir endpoint&#8217;i a\u00e7mak, onu herkese a\u00e7\u0131k b\u0131rakmay\u0131 gerektirmez. Eri\u015fim gerekiyorsa yaln\u0131zca uygun y\u00f6ntem, kimlik do\u011frulama ve a\u011f kural\u0131 ile s\u0131n\u0131rland\u0131r\u0131n.<\/p>\n<h3><span id=\"Bir_callback_uzun_suruyor_veya_kilitleniyordur\">Bir callback uzun s\u00fcr\u00fcyor veya kilitleniyordur<\/span><\/h3>\n<p>Bir g\u00f6rev d\u0131\u015f API&#8217;den yan\u0131t bekliyor, b\u00fcy\u00fck bir \u00fcr\u00fcn grubunu tek i\u015flemde g\u00fcncelliyor veya veritaban\u0131nda kilit bekliyorsa worker batch i\u00e7indeki di\u011fer i\u015flere ge\u00e7emeyebilir. PHP <code>max_execution_time<\/code>, HTTP timeout ve uzak servisin yan\u0131t s\u00fcresi burada etkili olabilir. Te\u015fhis s\u0131ras\u0131nda bu ayarlar\u0131 topluca de\u011fi\u015ftirmek yerine hangi hook&#8217;un s\u00fcreyi t\u00fcketti\u011fini belirleyin.<\/p>\n<h3><span id=\"Uretim_hizi_tuketim_hizini_geciyordur\">\u00dcretim h\u0131z\u0131 t\u00fcketim h\u0131z\u0131n\u0131 ge\u00e7iyordur<\/span><\/h3>\n<p>Stok senkronizasyonu, fiyat g\u00fcncellemesi veya pazaryeri aktar\u0131m\u0131 d\u00fczenli aral\u0131klarla yeni i\u015fler olu\u015fturur. Runner \u00e7al\u0131\u015fsa bile her \u00e7al\u0131\u015ft\u0131rmada t\u00fcketilen g\u00f6rev say\u0131s\u0131, ayn\u0131 zaman aral\u0131\u011f\u0131nda \u00fcretilen g\u00f6rev say\u0131s\u0131ndan d\u00fc\u015f\u00fckse kuyruk b\u00fcy\u00fcr. Bu durumda yaln\u0131zca daha s\u0131k cron \u00e7al\u0131\u015ft\u0131rmak, d\u0131\u015f servis limitlerine veya veritaban\u0131 y\u00fck\u00fcne \u00e7arparak yeni bir sorun olu\u015fturabilir.<\/p>\n<h3><span id=\"Veritabani_ve_sunucu_kapasitesi_sinirdadir\">Veritaban\u0131 ve sunucu kapasitesi s\u0131n\u0131rdad\u0131r<\/span><\/h3>\n<p>Action Scheduler tablolar\u0131nda \u00e7ok say\u0131da kay\u0131t bulunmas\u0131, sorgular\u0131n ve temizlik i\u015flerinin maliyetini art\u0131rabilir. Disk dolulu\u011fu, inode s\u0131n\u0131r\u0131, y\u00fcksek I\/O beklemesi, d\u00fc\u015f\u00fck veritaban\u0131 ba\u011flant\u0131 kapasitesi veya PHP s\u00fcre\u00e7 s\u0131n\u0131r\u0131 da runner&#8217;\u0131n g\u00f6revleri zaman\u0131nda bitirmesini engeller. <a href=\"https:\/\/www.dchost.com\/blog\/woocommerce-kapasite-planlama-rehberi-vcpu-ram-iops-nasil-hesaplanir\/\">WooCommerce kapasite planlama<\/a> yakla\u015f\u0131m\u0131yla CPU, RAM, disk I\/O ve veritaban\u0131 davran\u0131\u015f\u0131n\u0131 birlikte de\u011ferlendirin; tek bir metri\u011fe g\u00f6re karar vermeyin.<\/p>\n<h2><span id=\"Dar_kapsamli_duzeltme_nasil_yapilir\">Dar kapsaml\u0131 d\u00fczeltme nas\u0131l yap\u0131l\u0131r?<\/span><\/h2>\n<h3><span id=\"Cron_tetikleyicisini_duzeltin\">Cron tetikleyicisini d\u00fczeltin<\/span><\/h3>\n<p>\u00d6n ko\u015ful olarak site yolunu, PHP s\u00fcr\u00fcm\u00fcn\u00fc, WordPress kullan\u0131c\u0131s\u0131n\u0131 ve yedek durumunu do\u011frulay\u0131n. WP-Cron devre d\u0131\u015f\u0131ysa sistem y\u00f6neticinizle ger\u00e7ek cron&#8217;un kurulu olup olmad\u0131\u011f\u0131n\u0131 kontrol edin. Cron komutunu \u00f6nce elle, s\u0131n\u0131rl\u0131 bir g\u00f6zlem i\u00e7in \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">cd \/var\/www\/example.com\nwp cron event run --due-now<\/code><\/pre>\n<p>Bu komut due, yani zaman\u0131 gelmi\u015f WordPress cron olaylar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131r\u0131r. Action Scheduler s\u00fcr\u00fcm\u00fcn\u00fcz kendi runner&#8217;\u0131n\u0131 WP-Cron \u00fczerinden kullan\u0131yorsa etkisini g\u00f6zlemleyebilirsiniz. Komut hata verirse hata metnini \u00e7\u00f6zmeden tekrar tekrar \u00e7al\u0131\u015ft\u0131rmay\u0131n.<\/p>\n<p>WP-CLI ile do\u011frudan Action Scheduler \u00e7al\u0131\u015ft\u0131rmak i\u00e7in kurulu s\u00fcr\u00fcm\u00fcn destekledi\u011fi komutu kullanabilirsiniz:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">cd \/var\/www\/example.com\nwp action-scheduler run --batch-size=20 --batches=1<\/code><\/pre>\n<p>Buradaki d\u00fc\u015f\u00fck batch boyutu ve tek batch, \u00f6nce kontroll\u00fc do\u011frulama i\u00e7indir. Kurulu s\u00fcr\u00fcm\u00fcn\u00fcz bu se\u00e7enekleri desteklemiyorsa <code>wp action-scheduler help run<\/code> \u00e7\u0131kt\u0131s\u0131n\u0131 esas al\u0131n. \u00c7al\u0131\u015ft\u0131rma sonras\u0131nda pending say\u0131s\u0131n\u0131, en eski g\u00f6revin ya\u015f\u0131n\u0131 ve failed kay\u0131tlar\u0131n\u0131 yeniden kontrol edin.<\/p>\n<p>Pending say\u0131s\u0131 azal\u0131yor ve hata oran\u0131 de\u011fi\u015fmiyorsa tetikleme sorunu b\u00fcy\u00fck \u00f6l\u00e7\u00fcde do\u011frulanm\u0131\u015ft\u0131r. Ard\u0131ndan cron&#8217;u uygun aral\u0131kta kal\u0131c\u0131la\u015ft\u0131r\u0131n. Sadece daha k\u0131sa aral\u0131k belirlemek yerine i\u015flem s\u00fcresi, d\u0131\u015f API limitleri ve sunucu kapasitesiyle uyumlu bir periyot se\u00e7in.<\/p>\n<h3><span id=\"Basarisiz_hook8217u_izole_edin\">Ba\u015far\u0131s\u0131z hook&#8217;u izole edin<\/span><\/h3>\n<p>Failed kayd\u0131ndaki hook ve hata mesaj\u0131 ayn\u0131 ise \u00f6nce bu g\u00f6revi sa\u011flayan eklentinin g\u00fcncel s\u00fcr\u00fcm\u00fcn\u00fc, API kimlik bilgilerini ve d\u0131\u015f servis durumunu kontrol edin. Eklentiyi canl\u0131 sipari\u015f ak\u0131\u015f\u0131 \u00fczerinde kapatmadan \u00f6nce staging ortam\u0131nda veya bak\u0131m penceresinde test edin. Sorun yaln\u0131zca tek bir entegrasyondaysa t\u00fcm Action Scheduler kuyru\u011funu durdurmak yerine ilgili entegrasyonun ayar\u0131n\u0131 d\u00fczeltin.<\/p>\n<p>Hata bir uzak API zaman a\u015f\u0131m\u0131ysa yeniden deneme say\u0131s\u0131n\u0131 kontrol edin. Her denemede ayn\u0131 iste\u011fin d\u0131\u015f sisteme ula\u015f\u0131p ula\u015fmad\u0131\u011f\u0131n\u0131 ve idempotency, yani ayn\u0131 iste\u011fin tekrar\u0131nda yinelenen yan etki olu\u015fturmama deste\u011fini do\u011frulay\u0131n. Bu bilgi yoksa toplu retry i\u015flemi \u00f6deme, stok veya sipari\u015f bildirimlerinde tekrar yaratabilir.<\/p>\n<h3><span id=\"Tuketim_hizini_kontrollu_artirin\">T\u00fcketim h\u0131z\u0131n\u0131 kontroll\u00fc art\u0131r\u0131n<\/span><\/h3>\n<p>Runner \u00e7al\u0131\u015f\u0131yor, fakat bekleyen g\u00f6revler yava\u015f azal\u0131yorsa \u00f6nce k\u00fc\u00e7\u00fck bir batch ile sunucu etkisini \u00f6l\u00e7\u00fcn. CPU, RAM, disk I\/O, veritaban\u0131 sorgu s\u00fcresi ve PHP s\u00fcre\u00e7lerini izleyin. Ard\u0131ndan batch boyutunu kademeli de\u011fi\u015ftirin; ayn\u0131 anda \u00e7ok say\u0131da paralel worker ba\u015flatmak kilit \u00e7ak\u0131\u015fmas\u0131 ve d\u0131\u015f servis rate limit&#8217;i olu\u015fturabilir.<\/p>\n<p>Web istekleriyle \u00e7al\u0131\u015fan runner i\u00e7in PHP-FPM \u00e7ocuk s\u00fcre\u00e7leri \u00f6nemlidir. Ancak CLI \u00fczerinden \u00e7al\u0131\u015fan cron veya kuyruk i\u015f\u00e7isi FPM havuzunu t\u00fcketmez; kendi PHP s\u00fcrecini kullan\u0131r. Bu nedenle FPM ayarlar\u0131n\u0131 de\u011fi\u015ftirmeden \u00f6nce i\u015fin ger\u00e7ekten HTTP \u00fczerinden mi, CLI \u00fczerinden mi \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 belirleyin. Web trafi\u011fi de yava\u015fl\u0131yorsa <a href=\"https:\/\/www.dchost.com\/blog\/wordpress-ve-woocommerce-icin-php-fpm-ayarlari-pm-max-children\/\">PHP-FPM ayarlar\u0131<\/a> ayr\u0131ca incelenebilir.<\/p>\n<div class=\"aiw-note aiw-note-warning\">\n<p class=\"aiw-box-title\">Dikkat<\/p>\n<p>Pending veya failed kay\u0131tlar\u0131n\u0131 do\u011frudan veritaban\u0131 sorgusuyla silmeyin. Action Scheduler tablolar\u0131, eklentinin bekledi\u011fi kay\u0131t ili\u015fkileri ve yeniden deneme durumlar\u0131yla birlikte \u00e7al\u0131\u015f\u0131r. Silme ancak g\u00f6revin ne yapt\u0131\u011f\u0131, art\u0131k gerekli olmad\u0131\u011f\u0131 ve geri d\u00f6n\u00fc\u015f plan\u0131 do\u011fruland\u0131ktan sonra; m\u00fcmk\u00fcnse ilgili eklentinin destekledi\u011fi temizlik y\u00f6ntemiyle yap\u0131lmal\u0131d\u0131r.<\/p>\n<\/div>\n<h2><span id=\"Eski_kayitlar_nasil_temizlenir\">Eski kay\u0131tlar nas\u0131l temizlenir?<\/span><\/h2>\n<p>Complete ve canceled kay\u0131tlar\u0131n tutulma s\u00fcresi eklenti s\u00fcr\u00fcm\u00fcne ve ma\u011fazan\u0131n operasyonel ihtiyac\u0131na g\u00f6re de\u011fi\u015febilir. \u00d6nce veritaban\u0131 yede\u011finin geri y\u00fcklenebilir oldu\u011funu do\u011frulay\u0131n. Ard\u0131ndan Action Scheduler&#8217;\u0131n kendi cleanup davran\u0131\u015f\u0131n\u0131n \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 ve cron loglar\u0131nda temizlik g\u00f6revi bulunup bulunmad\u0131\u011f\u0131n\u0131 kontrol edin.<\/p>\n<p>Temizlik, pending veya failed i\u015flerin \u00e7\u00f6z\u00fcm\u00fc de\u011fildir. Ba\u015far\u0131s\u0131z g\u00f6revleri ar\u015fivlemek ya da silmek yerine, hata kayna\u011f\u0131 ortadan kalkt\u0131ktan sonra g\u00fcvenli olanlar\u0131 yeniden planlay\u0131n. Sipari\u015f ve stokla ili\u015fkili g\u00f6revlerde ilgili nesnenin g\u00fcncel durumunu kar\u015f\u0131la\u015ft\u0131rmadan toplu i\u015flem yapmay\u0131n.<\/p>\n<p>Tablolar b\u00fcy\u00fcm\u00fc\u015fse veritaban\u0131 disk alan\u0131n\u0131, indeks kullan\u0131m\u0131n\u0131 ve sorgu s\u00fcrelerini inceleyin. Yaln\u0131zca tabloyu optimize etmek, her g\u00fcn yeni g\u00f6rev \u00fcreten hatal\u0131 entegrasyonu \u00e7\u00f6zmez. \u00d6nce \u00fcretim nedenini, sonra ge\u00e7mi\u015f kay\u0131tlar\u0131n ya\u015fam d\u00f6ng\u00fcs\u00fcn\u00fc d\u00fczeltin.<\/p>\n<h2><span id=\"Degisikligin_ise_yaradigini_nasil_dogrularsiniz\">De\u011fi\u015fikli\u011fin i\u015fe yarad\u0131\u011f\u0131n\u0131 nas\u0131l do\u011frulars\u0131n\u0131z?<\/span><\/h2>\n<p>Bir d\u00fczeltmeden sonra \u00fc\u00e7 farkl\u0131 zaman diliminde \u00f6l\u00e7\u00fcm yap\u0131n: hemen sonras\u0131nda, normal trafik s\u0131ras\u0131nda ve bir planl\u0131 g\u00f6rev d\u00f6ng\u00fcs\u00fcn\u00fcn ard\u0131ndan. \u015eu g\u00f6stergeleri kar\u015f\u0131la\u015ft\u0131r\u0131n:<\/p>\n<ul>\n<li>En eski pending g\u00f6revin ya\u015f\u0131 azal\u0131yor mu?<\/li>\n<li>Yeni \u00fcretilen g\u00f6rev say\u0131s\u0131, tamamlanan g\u00f6rev say\u0131s\u0131ndan d\u00fc\u015f\u00fck m\u00fc?<\/li>\n<li>Failed g\u00f6revlerde ayn\u0131 hook ve hata tekrarlan\u0131yor mu?<\/li>\n<li>Planl\u0131 e-posta, stok veya web kancas\u0131 \u00e7\u0131kt\u0131s\u0131 ilgili sistemde do\u011frulan\u0131yor mu?<\/li>\n<li>Runner \u00e7al\u0131\u015f\u0131rken web yan\u0131t s\u00fcreleri, veritaban\u0131 y\u00fck\u00fc veya PHP s\u00fcre\u00e7leri kabul edilebilir mi?<\/li>\n<\/ul>\n<p>Bir action&#8217;\u0131n complete olmas\u0131, d\u0131\u015f sistemin i\u015flemi kabul etti\u011fini her zaman kan\u0131tlamaz. \u00d6rne\u011fin web kancas\u0131 iste\u011fi HTTP seviyesinde ba\u015far\u0131l\u0131 d\u00f6nm\u00fc\u015f olabilir, ancak kar\u015f\u0131 sistem uygulama seviyesinde reddetmi\u015f olabilir. Bu nedenle Action Scheduler durumunu, eklenti loglar\u0131n\u0131 ve kar\u015f\u0131 servisin yan\u0131t\u0131n\u0131 birlikte de\u011ferlendirin.<\/p>\n<h2><span id=\"Sik_Sorulan_Sorular\">S\u0131k Sorulan Sorular<\/span><\/h2>\n<h3><span id=\"Action_Scheduler_kuyrugunu_elle_calistirmak_guvenli_mi\">Action Scheduler kuyru\u011funu elle \u00e7al\u0131\u015ft\u0131rmak g\u00fcvenli mi?<\/span><\/h3>\n<p>G\u00f6revin yan etkisi ve eklentinin tekrar \u00e7al\u0131\u015ft\u0131rma davran\u0131\u015f\u0131 biliniyorsa, k\u00fc\u00e7\u00fck bir batch ile kontroll\u00fc \u00e7al\u0131\u015ft\u0131rma yap\u0131labilir. \u00d6deme, stok ve web kancas\u0131 g\u00f6revlerinde \u00f6nce yedek, log ve d\u0131\u015f sistem tekrar politikas\u0131 do\u011frulanmal\u0131d\u0131r.<\/p>\n<h3><span id=\"Pending_gorev_sayisi_yuksekse_site_mutlaka_yavaslar_mi\">Pending g\u00f6rev say\u0131s\u0131 y\u00fcksekse site mutlaka yava\u015flar m\u0131?<\/span><\/h3>\n<p>Hay\u0131r. Kuyruk say\u0131s\u0131 tek ba\u015f\u0131na web performans\u0131n\u0131 g\u00f6stermez. As\u0131l etki; sorgu maliyeti, runner&#8217;\u0131n \u00e7al\u0131\u015fma bi\u00e7imi, g\u00f6revlerin s\u00fcresi, disk ve veritaban\u0131 kaynaklar\u0131 ile web trafi\u011finin ayn\u0131 kaynaklar\u0131 kullan\u0131p kullanmamas\u0131na ba\u011fl\u0131d\u0131r.<\/p>\n<h3><span id=\"WP-Cron8217u_tamamen_kapatmak_dogru_mudur\">WP-Cron&#8217;u tamamen kapatmak do\u011fru mudur?<\/span><\/h3>\n<p>Trafi\u011fe ba\u011fl\u0131 tetiklemeyi azaltmak i\u00e7in ger\u00e7ek bir sunucu cron&#8217;u kuruluysa tercih edilebilir. Ancak cron&#8217;u kapatmadan \u00f6nce WordPress cron olaylar\u0131n\u0131n ve Action Scheduler runner&#8217;\u0131n\u0131n yeni y\u00f6ntemle ger\u00e7ekten \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulay\u0131n.<\/p>\n<h3><span id=\"Basarisiz_gorevleri_yeniden_denemeden_once_neye_bakmaliyim\">Ba\u015far\u0131s\u0131z g\u00f6revleri yeniden denemeden \u00f6nce neye bakmal\u0131y\u0131m?<\/span><\/h3>\n<p>Hata mesaj\u0131na, hook&#8217;u sa\u011flayan eklentiye, g\u00f6revin arg\u00fcmanlar\u0131na ve d\u0131\u015f sistemde ayn\u0131 i\u015flemin ger\u00e7ekle\u015fip ger\u00e7ekle\u015fmedi\u011fine bak\u0131n. Sorun \u00e7\u00f6z\u00fclmeden yap\u0131lan toplu yeniden deneme, ayn\u0131 bildirimi veya stok de\u011fi\u015fikli\u011fini tekrarlayabilir.<\/p>\n<h2><span id=\"Uygulanabilir_kontrol_listesi\">Uygulanabilir kontrol listesi<\/span><\/h2>\n<ul>\n<li>Pending, failed ve complete durumlar\u0131n\u0131 ayr\u0131 listeleyin.<\/li>\n<li>En eski bekleyen g\u00f6revin zaman\u0131n\u0131 ve en s\u0131k tekrarlanan hook&#8217;u not edin.<\/li>\n<li>WP-Cron, sunucu cron&#8217;u ve loopback davran\u0131\u015f\u0131n\u0131 ayr\u0131 ayr\u0131 do\u011frulay\u0131n.<\/li>\n<li>Callback hatas\u0131n\u0131, d\u0131\u015f API yan\u0131t\u0131n\u0131 ve eklenti logunu kar\u015f\u0131la\u015ft\u0131r\u0131n.<\/li>\n<li>Yedek ve geri d\u00f6n\u00fc\u015f plan\u0131 olmadan g\u00f6revleri veritaban\u0131ndan silmeyin.<\/li>\n<li>\u00d6nce k\u00fc\u00e7\u00fck batch ile test edin; ard\u0131ndan kaynak kullan\u0131m\u0131n\u0131 izleyerek kademeli art\u0131r\u0131n.<\/li>\n<li>De\u011fi\u015fiklik sonras\u0131nda kuyru\u011fun ya\u015f\u0131n\u0131, hata oran\u0131n\u0131 ve ger\u00e7ek \u00e7\u0131kt\u0131y\u0131 yeniden kontrol edin.<\/li>\n<\/ul>\n<p>\u0130lk sonraki ad\u0131m\u0131n\u0131z, panelden en eski pending ve failed g\u00f6revlerin hook adlar\u0131n\u0131 \u00e7\u0131karmak olmal\u0131. Tek bir hook bask\u0131nsa o eklentinin callback&#8217;ini ve entegrasyonunu inceleyin; t\u00fcm g\u00f6revler bekliyorsa cron ve loopback te\u015fhisine ge\u00e7in. B\u00f6ylece WooCommerce Action Scheduler kuyru\u011fu i\u00e7in genel bir ayar de\u011fi\u015fikli\u011fi yerine, g\u00f6zlenen ar\u0131zaya uygun dar bir d\u00fczeltme uygulayabilirsiniz.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>WooCommerce Action Scheduler kuyru\u011fu birikiyorsa pending ve failed g\u00f6revleri ay\u0131r\u0131n; cron, callback, veritaban\u0131 ve kapasite sorununu g\u00fcvenle te\u015fhis edin.<\/p>\n","protected":false},"author":4,"featured_media":5728,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24],"tags":[578,580,356,579,402],"class_list":["post-5732","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hosting","tag-action-scheduler","tag-kuyruk-yonetimi","tag-woocommerce","tag-wordpress-cron","tag-wp-cli"],"_links":{"self":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/5732","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/comments?post=5732"}],"version-history":[{"count":1,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/5732\/revisions"}],"predecessor-version":[{"id":5734,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/5732\/revisions\/5734"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media\/5728"}],"wp:attachment":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media?parent=5732"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/categories?post=5732"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/tags?post=5732"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}