CPU usage tinggi

Penyebab dan Cara Mengatasi CPU Usage Tinggi (Overload/limit 100%)

Cara untuk menurunkan CPU usage tinggi dari hosting ini berdasarkan pengalaman saya sendiri. Penyebab CPU usage overload limit sampai 100% bisa bervariasi, beberapa blogger menyebutkan bahwa kemungkinan layanan hosting yang buruk, tetapi itu belum tentu sepenuhnya benar.

Apabila Anda menghubungi pihak layanan hosting (CS) perihal CPU usage tinggi, biasanya mereka menyarankan kita untuk mengupgrade paket hosting yang digunakan. Tetapi masalah ini juga bukan solusi yang paling tepat.

Penting, pilih paket hosting sesuai kebutuhan

Sebelum memilih hosting yang bagus dan berkualitas untuk website Anda (Kebanyakan shared hosting), tentu sebelumnya sudah mencari-cari referensi yang bagus mengenai penyedia hosting tersebut. Selain harga yang terjangkau, performa hosting juga harus dipertimbangkan.

Penyedia layanan hosting yang bagus biasanya menyediakan data dan bandwidth yang cukup untuk setiap paket yang dipilih. Untuk shared hosting, penyedia layanan biasanya membatasi penggunanya untuk tidak memakai CPU dan memory secara berlebihan, normalnya antara 10%-25% dari total limit sistem karena prinsipnya digunakan bersama-sama.

Namun begitu, Anda bisa tentukan spek paket hosting sesuai dengan kebutuhan. Jangan ambil spek yang terlalu minim, untuk rekomendasi gunakan RAM (Virtual memory) minimal 1 GB. Ambil paket 1-3 bulan saja, nantinya kalau cocok bisa diperpanjang atapun di upgrade.

Penyebab CPU usage tinggi dan overload sampai 100% terjadi bukan dari kualitas penyedia hosting yang buruk, terkecuali memang sedang terjadi trouble pada saat itu. Atau tiba-tiba visitor blog Anda melonjak drastis, tapi kejadian yang begini juga jarang. Toh kita bisa pantau pengunjung melalui dashboard analytic.

Selain itu, kita juga bisa cek status server dari penyedia hosting. Apakah benar-benar uptime pada saat itu. Apabila semua baik-baik saja, berarti masalah CPU usage tinggi bukan dari layanan hosting.

CPU usage tinggi
Cek Server status

Penyebab CPU usage tinggi dan overload 100%

Penggunaan theme

Kembali ke pokok permasalahan, biasanya yang menyebabkan CPU usage tinggi pada statistik cPanel adalah penggunaan theme dan plugin yang kurang tepat. Untuk masalah theme, besar kemungkinan tidak mendapatkan layanan update theme secara berkala dari pihak pembuat theme.

Loading...

Saran saya, apabila menggunakan theme gratis pastikan Anda cek seberapa rutin theme tersebut di update. Lihat pada halaman unduhan theme dan halaman support, sejak kapan theme tersebut terakhir di update.

CPU usage tinggi

Namun apabila ada sedikit uang, Anda bisa menggunakan theme premium yang mendapatkan support update berkala dari pengembang theme. Saat ini sudah banyak theme premium murah yang bisa dapatkan, selain itu performa juga banyak berpengaruh karena theme premium rata-rata ter optimasi.

Baca : 7 Alasan Untuk Tidak Menggunakan Theme WordPress Gratisan

Penggunaan plugin

Masalah CPU usage tinggi biasanya terjadi karena penggunaan plugin yang kurang tepat. Plugin untuk CMS WordPress biasanya menggunakan bahasa PHP, secara normal bahasa PHP tidak begitu membutuhkan resource yang tinggi.

Tetapi, apabila programmer plugin membuat syntax yang jelek, bisa jadi program PHP tadi memacu kinerja CPU dan RAM hosting secara berlebihan. Apalagi kalau plugin sudah tidak pernah di update.

CPU usage tinggi

Pertanyannya, plugin mana yang jadi tersangka menjadi penyebab CPU usage tinggi? Sehingga terjadi limit. Beberapa plugin dibawah ini mungkin bisa menjadi penyebab masalah ini.

  • Jetpack

Penggunaan jetpack mungkin tidak cocok untuk shared hosting, tetapi apabila Anda tetap memaksa untuk mempertahankan plugin ini  non aktifkan modul-modul yang tidak Anda perlukan.

  • All in One SEO Pack

Plugin All in One SEO Pack sebenarnya bagus untuk digunakan, tetapi plugin ini mempunyai respon time yang tinggi, sebagai alternatif bisa ganti dengan plugin Yoast WordPress SEO.

  • Wordfence

Fungsi yang dimiliki plugin ini cukup dapat diandalkan untuk masalah security. Fitur yang dimilikinya juga cukup beragam seperti memantau disk space, memblokir IP dan mendeteksi perubahan file.

Apabila Anda masih mempertahankan plugin ini sebaiknya jangan aktifkan “Enable Live Traffic View”. Karena fitur ini cukup memakan resource yang tinggi.

  1. Buka pengaturan Wordfence
  2. Masuk ke option
  3. Hilangkan centang pada Enable Live Traffic View
  4. Setelah itu simpan pengaturan.
  • Plugin query generator (Popular post, related posts)

Contoh untuk plugin ini banyak sekali, salah satunya adalah YARPP (Yet Another Related Posts Plugin). Plugin semacam ini mempu memodifikasi dan membuat semacam template untuk tampilannya. Menjadikan thumbnail dan list view pada related content seperti related posts, pages, and custom post types.

Apabila Anda bijak menggunakan plugin ini, sebaiknya seting minimalis saja agar tidak terlalu menguras resource CPU dan RAm hosting.

  • Plugin shortcodes

Plugin ini juga banyak memuat file javascript dan CSS yang menguras kinerja dan membuat CPU usage tinggi. Contoh plugin shortcode yang cukup berat adalah Shortcode ultimate. Plugin semacam ini menyimpan lebih dari 50 shortcodes yang tentunya tidak akan kita gunakan semua.

Apabila Anda menggunakan plugin semacam ini, sebaiknya pertimbangkan untuk memilih plugin shortcode yang lebih simple, seperti WP Shortcode by MyThemeShop.

  • Plugin Woocommerce

Salah satu plugin yang berat adalah Woocommerce, plugin ini khusus untuk situs yang berjualan online. Tetapi apabila Ana tidak menggunakan plugin ini, maka Abaikan saja.

Semakin banyak plugin WordPress yang terpasang, semakin lama situs Anda akan memuatnya. Nonaktifkan dan hapus plugin yang tidak Anda butuhkan. Update plugin, ketika ada pemberitahuan update agar tetap bekerja optimal.

Optimalkan database

Jika Anda telah menonaktifkan plugin yang tidak diperlukan, tetapi indikator CPU usage masih tetap tinggi, Anda harus mencoba debug setiap plugin untuk mengetahui apakah itu penyebab lonjakan CPU hosting.

Pemasangan dan pencopotan plugin yang berulang-ulang akan menyebabkan penumpukan sampah (tabel). Hal ini akan menyebabkan database pada phpMyAdmin tidak stabil dan memakan sumber daya.

Optimasi database WordPress dengan menginstal plugin WP-Optimize, plugin ini efektif untuk membersihkan basis data WordPress secara otomatis (bisa dijadwalkan) sehingga database bisa berjalan dengan efisiensi dan maksimal.

CPU usage tinggi

Wp-Optimize juga menghapus semua data yang tidak perlu (misalnya komentar yang dibuang / tidak disetujui / spam) pelacak pingback dan opsi sementara yang kedaluwarsa.

Gunakan plugin chace

CMS WordPress banyak menggunakan file statis seperti java script, CSS dan html. Fungsi dan kegunaan plugin cache adalah membuat file statis dalam bentuk html di dalam sub folder cache hosting.

Jadi ketika seseorang mengunjungi blog Anda, maka sistem akan menampilkan file html statis tanpa harus me-load ulang keseluruhan dalam table dan query. Dengan begitu akan membantu menurunkan limit CPU usage tinggi.

Baca disini : Plugin Cache Terbaik Gratis dan Premium untuk WordPress

1. Untuk alternatif plugin cache gratis, Anda juga bisa lebih mengoptimalkan dengan menggabungkan W3 Total Cache dan CloudFlare. Yaitu sebuah layanan CDN (Content Delivery Network) yang bisa Anda gunakan tanpa harus membayar.

2. Alernatif kedua adalah menggunakan plugin WP Super Cache yang digabungkan dengan plugin Autoptimize. Untuk tutorialnya bisa Anda lihat disini : Mempercepat Loading Blog WordPress dengan Plugin Autoptimize

Non aktifkan fungsi Cron Jobs (Tugas terjadwal)

Apabila menjalankan pekerjaan cron terlalu sering (terutama tugas cron sumber daya intensif -WordPress) dapat berdampak negatif pada kinerja server. Pada akun shared hosting, interval yang diizinkan terpendek untuk pekerjaan cron adalah 15 menit.

Anda dapat menonaktifkan backup database atau pekerjaan penjadwalan WordPress lainnya secara default untuk mengurangi CPU usage tinggi atau bahkan overload.

Untuk menonaktifkan WP-Cron bisa dilakukan mengedit wp-config.php

  • Buka cPanel
  • Buka file manager
  • Buka public_html
  • Buka wp-config.php

Tambahkan baris berikut, kemudian simpan untuk perubahan.

define('DISABLE_WP_CRON', true);

Seperti gambar dibawah ini

CPU usage tinggi

Langkah kedua

Masih tetap di cPanel, buka menu Cron Job (Tugas terjadwal) lalu tambahkan tugas terjadwal baru.

Gunakan perintah dibawah ini. (Ganti http://www.klikmania.net dengan URLwebsite Anda)

wget -q -O - http://www.klikmania.net/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Seperti gambar dibawah ini

CPU usage tinggi
Klik gambar untuk memperbesar

Untuk pengaturan waktu bisa di sesuaikan, atau bisa contoh gambar diatas. Apabila berhasil maka akan muncul tugas terjadwal baru seperti gambar yang dilingkari warna merah.

Nonaktifkan WordPress heartbeat API

Secara default WordPress menggunakan API Heartbeat untuk mengelola halaman WP dashboard admin. API Heartbeat dapat digunakan untuk menangani tugas tertentu, Tetapi apabila permintaan admin-ajax.php yang berlebihan maka API Heartbeat WordPress dapat dinonaktifkan untuk mencegah agar aktivitas semacam ini tidak terjadi secara otomatis.

CPU usage tinggi

Anda bisa test melalui situs https://tools.pingdom.com untuk melihat grafik di atas, cari pada deretan admin-ajax.php.

Normalnya, waktu load untk Admin-ajax.php adalah antara 1-3 second. Apabila lebih dari itu maka akan memakan Resource berlebih sehingga CPU usage tinggi.

Untuk menonaktifkan API Heartbeat WordPress, bisa gunakan plugin seperti Heartbeat control. Instal plugin dan aktifkan. Kemudian atur konfigurasinya seperti gambar dibawah ini.

CPU usage tinggi

Optimasi gambar

Gambar atau foto merupakan media yang digunakan untuk mempercantik artikel dalam blog. Namun yang menjadi masalah, jika artikel terlalu banyak menggunakan gambar, maka loading dari laman tersebut akan semakin lambat.

Hal ini juga akan memicu penggunaan resource, sehingga CPU usage tinggi. Ada baiknya menggunakan gambar yang sudah di optimasi sebelum proses upload. Untuk rekomendasi, sebaiknya gunakan dimensi yang sesuai dan ukuran dibawah 100 Kb.

Untuk blog WordPress, kita bisa memanfaatkan plugin kompres gambar agar kapasitas ukurannya bisa di minimalisir. Banyak sekali untuk plugin gambar untuk dijadikan pilihan, Anda bisa menggunakan yang gratis maupun berbayar.

CPU usage tinggi

Saya sendiri menggunakan plugin Imagify untuk masalah kompres gambar, untuk gambar yang akan di upload akan terkompresi secara otomatis sehingga mengurangi waktu loading.

Gunakan CDN (Opsional)

Salah satu cara yang paling efektif untuk meningkatkan kecepatan blog adalah dengan menggunakan CDN (Content Delivery Network). Fungsi CDN adalah meminimalisir waktu unduh yang dibutuhkan oleh pengguna, CDN adalah jaringan server yang terletak di berbagai belahan dunia. Oleh sebab itu server yang terdekat dengan pengguna akan diprioritaskan untuk mengirimkan berkas yang diminta.

CPU usage tinggi
Final result reduce CPU usage

Selain itu fungsi CDN juga mampu meminimalisir CPU usage tinggi, karena sebagian file statis seperti JavaScript, CSS dan komponen dari theme seperti gambar dikirim dari server CDN.

Anda bisa menggunakan layanan CDN gratis dari Cloudflare yang bisa di padukan dengan plugin W3 Total cache untuk hasil yang lebih maksimal.

Saya sendiri menggunakan layanan CDN murah yang harganya sangat terjangkau dengan sistem pembayaran Pay As You Go. Apabila Anda tertarik, bisa mendaftar ke situs KeyCDN, ada penawaran gratis sebesar 250 Gb tanpa syarat apapun.

Apabila ada cara lain mengatasi CPU usage tinggi atau overload dan limit mencapai 100%, silahkan berbagi di kolom komentar.



Loading...

Bagikan

ganisebastian

Penulis

Menulis dari berbagai pengalaman pribadi dan bisa dipertanggung jawabkan, jika bermanfaat bagi Anda silahkan share.

Komentar

    Avatar

    wika

    ( - 14:39)

    wah,,, makasih mas,,, situs saya sering overload setelah saya cek hostingnya..

    Avatar

    Cara Manual

    ( - 08:26)

    saya ada 12 domain di satu hosting, berarti harus di non aktifkan cron-job nya di wp-config satu-satu ya ? terus bikin perintah manual cron job nya sebanyak 12 dengan beda link situsnya gitu ya ?

      ganisebastian

      ganisebastian

      ( - 04:45)

      wp-config tersedia untuk tiap instalasi WordPress, silahkan buka untuk masing – masing domain yang terinstalasi WordPress di public html.

    Avatar

    cornel

    ( - 15:41)

    makasih gan toturial nya

    Avatar

    kalau untuk web statis bagaimana min?

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *