|
Hm... ada apa dengan judul diatas? Jadi begini, alkisah beberapa waktu lalu salah satu server dijaminmurah.com dimana pnyet bernaung mengalami overload process yang disebabkan oleh salah satu user di server tersebut. Setelah berita dipublish oleh pihak Dijaminmurah akhirnya saya tahu penyebabnya adalah cron job yang dijalankan oleh wp-cron.php.
Sebenarnya apa sih wp-cron.php? wp-cron.php adalah plugin dari wordpress yang digunakan untuk melakukan penjadwalan terhadap suatu proses di dalam situs tersebut. wp-cron.php berjalan sebagai service yang dijalankan menggunakan command atau perintah, tapi wp-cron melakukan request selayaknya klien membuka HTTP yang menggunakan secret key dari hasil hashing password (”?check=”) untuk wp-cron.php, yang mana berjalan sebagai service apache dan php baru sehingga tidak merusak atau memperlambat request yang telah ada. Ini adalah jalan terbaik untuk menjalankan proses dari PHP. Lalu apa yang menybabkan server mengalami overload proses? Pengecualian dari paragraf diatas adalah adanya bagian yang salah dari wp-cron.php, ketika halaman wordpress tidak dapat diakses maka klien akan dialihkan ke halaman 403 atau 404 maka wp-cron.php akan melakukan request secara terus-menerus. Pada dasarnya ini adalah pengaturan yang bagus sebagai looping yang sangat besar atau tidak terbatas. saya tidak yakin mengenai bagaimana ini bekerja, tapi saya tahu apa yang terjadi karena server saya mengalami masalah tersebut. Bagaimana mengatasi masalah tersebut? Ada dua jalan sebenarnya untuk mengatasi masalah tersebut, yang pertama adalah dengan menggunakan patch dari wordpress dan yang kedua adalah ketika halaman "Forbidden" dialihkan ke halaman 403 atau 404 maka plugin akan mencoba mendeteksinya sebagai spam yang tanpa disadari akan memblacklist permintaan dari ip server lokal untuk permintaan kepada wp-cron.php secara spesifik. Dibawah ini adalah langkah mudah untuk membuat kembali dan jika Anda mempunyai kondisi yang tepat maka ini adalah detail dari sebelumnya: - Buka halaman editor untuk melakukan posting yang telah disiapkan.
- Simpan.
- Edit lagi dan simpan.
- Edit dikemudian hari dan simpan.
- Lihat didalam server status, bila Anda masih dapat membebaninya...
Di server saya, yang menghasilkan sususan di Apache max_clients menjadi hit dan server meminta untuk dimatikan, dengan proses Apache yang tidak panjang dan sesuai dengan memory serta tidak melakukan request baru. Dan masalah terlah terselesaikan setelah service apache direstart. Dan solusinya adalah dengan menonaktifkan / disable Bad Behavior hingga masalah ini dapat terselesaikan, dan local request / permintaan dari lokal kepada wp-cron.php diijinkan untuk keluar dari blacklist. Saya telah menyiapkan catatan developer Bad Behavior dari masalah ini. dan mungkin tidak perlu terlalu banyak masalah untuk menyelesaikannya. from: www.trisweb.com
|