Artikel ini sementara saya tulis untuk menyiasati Load server Linux non Hosting, dimana kita masih memiliki akses kontrol cukup, terutama untuk melakukan rekonfigurasi apache. Saya menggunakan layanan VPS dengan memori maksimal 512 dengan normal 256. Beban server adalah sistem-sistem informasi dan demo, serta blog-blog serta web dengan CMS dengan plugins yang cukup menguras memori.
Berikut pengalaman saya untuk usaha menurunkan load ketika memori begitu terbatas, cpu juga terbatas. Saat itu saya dan teman saya memang mengeluhkan beratnya server untuk diakses bersamaan, terutama update blog. Ketika proses akses ke CMS (terutama administrasi, posting dll) terasa berat, saat itu saya menggunakan akses ke console (command line) melakukan monitoring proses dengan perintah “top”.
Contoh penggunaan perintah top. (tidak kondisi sebenarnya)
Suatu ketika terlihat pada bagian atas tabel, Mem dan Swap, kehabisan memori free. Saat memory free tersebut kecil, maka load server akan terasa berat. Ketika akses web dari pihak client semakin banyak maka memori free akan makin habis. Padahal biasanya kita membutuhkan banyak jumlah pengunjung. Lha kok malah mendem? Ketika load server tinggi ditandai dengan mem free tinggi, perhatikan pada urutan %CPU dan %MEM. Biasanya saat itu apache/httpd dan mysql atau database server anda akan sangat memakan %CPU dan %MEM yang cukup tinggi. Proses memori tinggi ini akan turun dalam beberapa menit. Padahal kita membutuhkan secepatnya turun.
Dulu saya menggunakan siasat ini : https://blogit.bimosaurus.com/2012/07/23/clear-memory-linux-tanpa-restart . Namun untuk proses web application, cara ini memang menurunkan load namun tidak begitu signifikan. Akhirnya saya pun menggunakan teknik lain. Dengan mencoba restart apache, ternyata load server langsung turun ditandai dengan turunnya Memori tergunakan oleh httpd dan mysql. Namun dengan menggunakan httpd restart, akan memutus akses client sementara yang kadang justru akan berbuah error ketika saat diakses pas terjadi off server. Akhirnya saya mencoba bereksperimen menggunakan satu shell yang saya letakkan dalam sebuah script:
#/bin/bash
/etc/init.d/httpd reload
Saya letakkan shell tersebut dalam sebuah file dengan path : /opt/http-reconfigure, tak lupa saya berikan kode:
chmod a+x /opt/http-reconfigure
Saya pun menggunakan crontab untuk menjalankan file tersebut secara berkala lima menitan:
*/5 * * * * root /root/http-reconfigure
httpd reconfigure adalah suatu proses melakukan reload konfigurasi httpd/apache tanpa melakukan restart. Sehingga akses dari client tidak mengalami putus sessaatpun.
Proses tersebut saya monitor selama beberapa hari dengan kontrol akses server baik log maupun netstat, ternyata cukup efektif. Saat load meninggi, belum mencapai puncak, waktu telah memasuki 5 menit dan mereload apache. Free memori pun kembali berlimpah. Saya memasang cukup banyak aplikasi web dan CMS WordPress di server VPS tersebut. Server juga telah berjalan sekian lama, hingga kini free memori masih tetap terjaga.. Ya itu sekedar berbagi kenakalan saja.. semoga dapat bermanfaat. Atau ada yang memiliki cara lebih bagus? Silakah share disini 🙂
thanks sharenya om,
btw, kalo untuk vps centos kvm gimana om? apakah sama?
script nya bagi dong :p
maaf nanya gan, itu script nya di direktroi bin ya (#/bin/bash) caranya masuk direktori nya gimana ya?
wah dotkomku fatal out memory terus e kang, piye iki
maaf, yang “1 */5 * * * * root /root/http-reconfigure” apa gak salah tulis kan filenya ada di /opt/?
Terimakasih mas Koreksinya.. 🙂 Menandakan bahwa pembaca juga ternyata aktif. Sekali lagi terimakasih