WordPress saytın mysql optimizasiyası

Salam. WordPress üzərində olan bir sayt var. xəbər saytıdı. əvvəl köhnə sayt laravel də yaziımışdı. onu parser yazıb yeni wordpress sisteme keçirmək lazım idi. yazdım parseri keçirdim ilk əvvəllər çox sürətlə insert olundu hardasa 1 dəqiqədə 100 post insert eləyirdi rahat. ümumi olaraq 400 min xəbər var. hardasa 200 min parse olunub . 150. minden sonra başladı çox yavaş getməyə. indi 200 min post var wp də. ve 1 postu insert etmək üçün 1 dəqiqəyə yaxın vaxt çəkir. parseri saxlayıram wordpress in özünün dashboard u ilə new post əlavə edəndə belə 1 dəqiqəyə yaxın çəkir insert etməyi. server də deyim ki zəif server deyil. 32 ram 8 core olan serverdi. və insert vaxtı baxıram sadecə cpu 99 faizə qalxır. server kilidlənir. xeyli araşdırdım ama bir yol tapa bilmədim. səbəb nə ola biler sizcə? teşekkür edirəm.


Yadda saxlama
Kateqoriya: Sual . , , . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (7 cavab var)

(21:31, 13/09/2020 ) #78041

normal deyil əlbəttə.
ən azından ilk olaraq query monitor pluginini aktiv saxlayaraq wp-adminde post yaradın və canlı reporta baxın görün neçə saniyə nəyə gedib, hansı resurs ən çox memory və resurs yeyib.

Demək olardı ki – ola bilər ki, parser scriptdə bug var, eksponensial qaydada resurs yeməyi artırır deyə bəlli saydan sonra ağırlaşır. Amma xalis wp-admində də belə olursa demək ki insert hook-lardan birində problem var – ya remote mənbəyə bağlanır hər dəfə – ya da hər dəfə bütün DB rowlarını oxuyan yersiz bir script var – baza ölçüsü artdıqca o script də ağırlaşır.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (22:04, 13/09/2020 ) #78042

    Təşəkkür edirəm cavabınız üçün. Əlavə hər hansı qeyri adi plugin yoxdur. 2 3 plugin var hamısı da normal tanınan güvənli pluginlərdi. Yoast seo, acf premium. Əvvəl onnan şübhələndim məndə ki yəqin yazdığım parse scriptdə nəsə problem var. Ona görə dashboard ilə yoxladım add post elədim yenə gecikmə oldu. Query monitor u yükləyib baxaram ətraflı.

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(00:25, 14/09/2020 ) #78043

qeyd etdiyiniz plugini yukledim. ve butun diger pluginleri deaktiv edib yeniden yoxladim demek olar ki suretde deyisiklik olmadi. yene de eyni gecikme oldu. query monitor da baxanda da en uzun ceken query bu oldu. 24 saniye cekir hardasa. posts liste daxil olanda

SELECT COUNT( 1 )
FROM wp_posts
WHERE post_type = ‘post’
AND post_status NOT IN ( ‘trash’,’auto-draft’,’inherit’,’request-pending’,’request-confirmed’,’request-failed’,’request-completed’ )
AND post_author = 1

bu mene ele gelir wordpress in ozunun default query si di. ama niye bele gecikir maraqlidi

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (00:50, 14/09/2020 ) #78044

    Bəli, default query-dir və 0.001 saniyəyə run olan bir şeydir.

    Parseriniz davam edir işləməyə hazırda? Ordan da şübhələnməyə dəyər. Bəlkə də cron-da gecikmələr olub və biri o birinin növbəsinə girməklə zəncirvarı böyük bir tıxac yaradıb. Onu mütləq SSH ilə girib baxmaq lazımdır. Lazım olsa veb server və mysql restartlar da vermək ki, tıxac təmizlənsin. Amma bu zaman da gərək son dəfə harda qalmışdı onu adjust edəsiniz manual qaydada. Çünki qarışacaq bir az – əgər parseriniz belə qırılmalara qarşı dayanlıqlı deyilsə.

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

      (00:52, 14/09/2020 ) #78045

      xeyr parseri sondurmusem. sondurennen sonra duzdu queue yaranmisdi ve hardasa 4-5 saat getdi insertler tam temizlenene qeder tixac. ama indi tam olaraq dayanib. wp_posts dan da baxiram hec bir insert getmir row sayi deyisilmez qalib. hemde serverin yukune baxib bilmirem ki 0 % di yuk. butun sistemi yoran demek olar ki bu query di tekce.

      Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(01:26, 14/09/2020 ) #78046

bele bir shey eledim. deqiq o demekdir ki bu wordpresslik bir problem yoxdur. birbasa command line ile qosuluram mysql e ve hemen gec geden querylerden birini run edirem, netice eyni olur. wp query monitorda da 8 saniyeye run oldu bu query mysql command line ile de. bele cixir ki problem mysql dedi?

mysql> SELECT COUNT( 1 )
-> FROM wp_posts
-> WHERE post_type = ‘post’
-> AND post_status NOT IN ( ‘trash’,’auto-draft’,’inherit’,’request-pending’,’request-confirmed’,’request-failed’,’request-completed’ )
-> AND post_author = 1;
+————+
| COUNT( 1 ) |
+————+
| 240151 |
+————+
1 row in set (8.21 sec)

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (16:53, 14/09/2020 ) #78047

    Bəli. Table-ları recreate edə bilərsiniz optimize düyməsi ilə (phpmyadmin or command-line). Böyük ehtimal həll edə bilər bu problemi.
    Və ya duplicate DB yaradıb orda run edə bilərsiz ki bəlkə elə yaxşı olar ki duplicate db-yə keçirəsiz saytı.

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Software Developer cavab verdi - Qırılmış nömrə nə vaxt tam bağlanır (20 saat əvvəl)

Emil Imanov cavab verdi - Rus dilindən mətni tərcümə etmək (23 saat əvvəl)

Software Developer cavab verdi - Payoneer kartdan pul çıxartdıqda vergi (2 gün əvvəl)

Software Developer cavab verdi - Wise vasitəsilə bank kartına pul köçürmə (6 gün əvvəl)

Software Developer cavab verdi - Rus dilindən mətni tərcümə etmək (7 gün əvvəl)

Cənab cavab verdi - Almanca söz bazası yığmaq (10 gün əvvəl)

rdrobert cavab verdi - Mikrofon süngərinə yazı (11 gün əvvəl)

rdrobert cavab verdi - Yerli virtual olaraq dost tapmaq platforması (11 gün əvvəl)

rdrobert cavab verdi - Almanca söz bazası yığmaq (11 gün əvvəl)

rdrobert cavab verdi - Playstation 4 almaq, Playsation klub açmaq (11 gün əvvəl)

rdrobert cavab verdi - Proqramistin ixtsasi hansidir? (11 gün əvvəl)

Software Developer cavab verdi - Azercell Kabinetim aplikasiyasında İstəSən tarifi haqqında (12 gün əvvəl)

Software Developer cavab verdi - Proqramistin ixtsasi hansidir? (13 gün əvvəl)

byshako cavab verdi - Google Azərbaycan nömrələrini qəbul etmir (23 gün əvvəl)

rdrobert cavab verdi - Honeygain, passiv gelir (24 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 607 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23237 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2024