Memiliki sebuah server yang tidak stabil tentu adalah hal yang
benar-benar sangat menyebalkan. Bayangkan jika anda sedang memiliki
sebuah blog/website atau anda memiliki sebuah toko online, lalu
tiba-tiba saat anda mendapatkan banyak sekali pengunjung ke website
anda, server anda langsung berat dan tidak bisa diakses sehingga anda
menjadi kehilangan banyak sekali pengunjung bahkan pembeli. Menyebalkan
bukan ?
Dalam tutorial singkat ini akan saya jelaskan bagaimana cara membuat
server anda menjadi lebih stabil sehingga dapat menerima lebih banyak
pengunjung sehingga anda dapat mengkonfigurasi sendiri server anda
sehingga menjadi server hosting terbaik dan terstabil. Tutorial ini mengasumsikan anda menggunakan web server apache untuk wordpress hosting.
1. Optimasi Software Anda.
Jangan pernah merasa sehat jika parasit belum anda buang. Ingat, salah
satu penyebab utama beratnya sebuah server adalah software yang anda
gunakan. Jangan melakukan optimasi pada konfigurasi webserver anda
sebelum membuang parasit yang sebenarnya.
Sebagai contoh, apabila anda menggunakan Wordpress sebagai CMS website
anda, coba anda cek plugin yang anda pasang, apakah ada plugin yang
memberatkan kinerja server ? Apakah ada plugin yang sebenarnya fungsinya
sama tapi aktif semua ? Apakah ada plugin yang membuat proses berjalan
sendiri saat anda tidak mengakses website anda ? Jika ya, buang
plugin-plugin tersebut atau ganti dengan plugin yang memiliki fungsi
secukupnya dan berjalan lebih ringan, contoh : mengganti All In One SEO
plugin dengan Greg's High Performance SEO Plugin.
2. Tentukan MaxClients Pada Konfigurasi Apache.
Beberapa orang mungkin berpikir bahwa menambah MaxClients akan membuat
server anda dapat menerima lebih banyak pengunjung tanpa hambatan, atau
bila server melambat, tinggal mengurangi angka MaxClients. Hal tersebut
adalah SALAH BESAR.
Ingat, bahwa sebenarnya setiap proses apache yang berjalan itu memakan
memory yang jumlahnya bisa dibilang sama. Sebagai contoh, satu
pengunjung akan membuka satu proses apache, jika ada pengunjung kedua
(otomatis muncul satu lagi proses apache), memory yang digunakan proses
apache pengujung satu dan pengunjung dua adalah sama.
Pada umumnya, setiap proses apache yang dibentuk akan memakan memory
sebesar 20 MB. Asumsikan anda memiliki server dengan RAM 1 GB (1024 MB),
maka anda dapat menjalankan maksimal 50 proses apache (50 x 20 MB =
1000 MB). Jika anda mengkonfigurasi MaxClients melebihi 50, maka proses
apache selanjutnya akan berjalan di swap memory yang dapat memberatkan
server dan mempercepat rusaknya media penyimpanan server (HDD).
Konfigurasi dan batasi MaxClients apache anda dengan perhitungan
tersebut, maka anda akan dapat merasakan server anda berjalan lebih
optimal sesuai dengan beban maksimal server.
3. Disable Beberapa Modul Apache.
Apache berjalan dengan lebih dari 20 modul secara default. Sedihnya,
modul-modul default ini mayoritas adalah modul yang tidak kita butuhkan
dan modul tersebut juga memakan cukup banyak memory saat berjalan
sehingga akan menambah beban server.
Untuk meringankan server, anda dapat mengurangi modul-modul tersebut
sehingga apache akan berjalan lebih ringan tanpa adanya tambahan proses
modul yang membebani. Anda dapat menggunakan perintah "a2dismod
nama_modul" untuk melakukan hal ini. Apabila anda pengguna cPanel, anda
dapat rebuild apache dengan menu easyapache.
4. Kurangi KeepAlive Time Out.
Fungsi konfigurasi KeepAlive Time Out pada apache adalah apabila anda
mengakses sebuah server, dalam hal ini pengunjung website, maka
sebenarnya web server akan membuka dan menjaga koneksi ke server agar
tetap terbuka dalam periode waktu tertentu. Pada periode ini, proses
apache yang terbentuk tersebut akan dikunci agar tidak digunakan oleh
proses lain.
Mungkin hal ini akan membantu pengunjung website anda mendapatkan
koneksi yang lebih stabil karena koneksi akan terus terbuka, tapi jika
kita melihat perhitungan yang telah kita lakukan di poin nomor 2 di
atas, maka kita akan sadar bahwa jika semakin banyak proses apache yang
terbuka dan terkunci karena konfigurasi KeepAlive Time Out yang terlalu
lama, maka banyak sekali memory yang digunakan sehingga server akan
semakin berat dan mudah kehabisan memory.
Dalam hal ini, apabila anda menginginkan server yang lebih stabil, anda
dapat mengurangi KeepAlive Time Out ini menjadi 2 atau 3 detik saja
(default adalah 30 detik).
Untuk Pengguna Aktif cPanel :
Apabila anda menggunakan cPanel untuk server anda dan menginginkan
server yang lebih stabil, anda dapat menggunakan plugin CpNginx untuk
server anda. Plugin ini akan menjadikan Nginx sebagai lapisan pertama
web server anda dan apache menjadi lapisan kedua.
Lapisan pertama ini (nginx) akan melayani request dan cache static
content seperti gambar, teks, file css, dll dalam website anda,
sementara lapisan kedua (apache) akan melayani request PHP. Hal ini akan
meringankan kinerja server karena tugas dibagi menjadi 2, static
content dan PHP. Dengan begitu, apabila pengunjung website anda
mengakses website anda, apache tidak akan memproses request terhadap
file-file statis dan digantikan tugasnya oleh nginx, setelah itu
file-file statis ini akan dibuatkan cache oleh nginx, sehingga bila
pengunjung tersebut kembali ke halaman website yang dibuka sebelumnya,
static content akan diambil melalui cache nginx ini tanpa harus
melakukan request pada apache lagi.
Demikian adalah sedikit tutorial singkat untuk optimasi web server.
Setelah membahas cara optimasi web server di website ini, saya harap
anda dapat segera melakukan optimasi mandiri untuk server anda sehingga
bisnis dan aktivitas online anda akan semakin lancar.