📑 Daftar Isi
- Kenapa Konfigurasi Memcached Itu Penting Buat Website Kamu?
- Persiapan: Cek Dulu Kondisi Servermu
- Step 1: Install Memcached via EasyApache4
- Step 2: Atur Konfigurasi Memcached
- Step 3: Aktifkan Extension Memcached di PHP
- Step 4: Sambungkan LiteSpeed Cache ke Memcached
- Step 5: Verifikasi dengan Command Line
- Troubleshooting Cepat
- Pro Tips & Warnings
- FAQ
- Q: Apa bedanya Memcached sama Redis?
- Q: Berapa besar CACHESIZE yang pas buat VPS saya?
- Q: Apakah saya harus restart LiteSpeed setelah install memcached?
- Q: Memcached aman nggak sih dibuka ke publik?
- Related Issues
- Penutup
Jadi gini, kemarin sore aku lagi santai ngopi, eh tiba-tiba muncul ticket dari client. Website WordPress-nya lemot banget, padahal resource VPS masih lega. Aku cek satu-satu, mulai dari MySQL, PHP-FPM, sampe webserver. Semua normal. Terus aku kepikiran, kok bisa ya query database berkali-kali padahal halamannya itu-itu doang?
Nah, setelah digali lebih dalam, ketemu deh biang keroknya. Klienku ini udah pake LiteSpeed, tapi object cache-nya kosong melompong. Memcached-nya bahkan belum aktif di server. Jadi wajar aja kalau WordPress-nya nge-hammer database terus. Padahal solusinya sebenernya gampang banget: konfigurasi Memcached di cPanel dengan LiteSpeed yang bener bisa langsung bikin website kerasa jauh lebih enteng.
Kenapa Konfigurasi Memcached Itu Penting Buat Website Kamu?
Oke, sebelum masuk ke langkah-langkahnya, kita obrolin dulu sebentar soal kenapa ini penting. Ibaratnya begini: bayangin kamu punya toko, terus tiap ada pembeli yang nanya harga barang yang sama, kamu harus lari ke gudang buat cek ulang. Meh-mheh capek kan? Nah, Memcached itu kayak karyawan yang hafal daftar harga — dia nyimpen hasil yang paling sering ditanya, jadi nggak usah ke gudang terus-terusan. Itu aja sebenernya inti dari caching: nyimpen jawaban biar nggak ngulang kerjaan yang sama.
Dalam konteks WordPress yang jalan di LiteSpeed, ini penting banget. Tanpa object cache, setiap visitor yang buka halaman bakal bikin WordPress nge-query database berulang-ulang. Bayangkan kalau ada 500 visitor dalam waktu bersamaan. MySQL-mu bakal ngos-ngosan, query time-nya naik, dan ujung-ujungnya website kerasa lambat meskipun VPS-mu sebenernya kuat. Dan yang paling bikin gemes, masalah ini nggak kelihatan dari htop kalau kamu cuma liat sekilas.
Lha, ini yang sering keliru. Banyak orang upgrade RAM atau CPU dulu, padahal masalahnya bukan di situ. Masalahnya di database yang dipukul terus tanpa istirahat. Memcached yang dikonfigurasi dengan benar bisa memotong beban query MySQL sampai 70-80% untuk kasus WordPress yang tipikal. Lumayan kan? Nggak usah nambah biaya sewa server, cukup tuning dikit. Bener-bener worth it buat ngeliat angka get_hits yang naik setelah konfigurasi beres.
Terus gimana dengan LiteSpeed? Nah, LiteSpeed Cache (LSCache) itu plugin yang pinter. Dia bisa nyimpen halaman penuh (page cache) di memori atau disk, dan buat object cache dia bisa pake Memcached atau Redis. Kombinasi LSCache + Memcached itu resep jitu buat website WordPress yang pengen cepet tanpa perlu server jumbo. Jadi intinya, kita bakal pasang Memcached dulu, terus sambungin ke plugin LiteSpeed Cache-nya.
Persiapan: Cek Dulu Kondisi Servermu
Sebelum mulai, pastikan kamu punya akses root ke WHM, ya. Kalau kamu cuma punya cPanel (bukan WHM), kemungkinan besar kamu perlu minta bantuan admin server atau provider hosting. Memcached itu service level, jadi butuh akses root. Nggak bisa dari level akun biasa.
Nggih, terus cek dulu apakah servermu udah punya Memcached atau belum. Caranya gampang:
systemctl status memcached
Kalau muncul error “Unit memcached.service could not be found”, berarti belum terinstall. Lanjut ke step berikutnya. Kalau statusnya active, berarti udah keburu jalan — kamu tinggal ke bagian konfigurasi PHP dan LiteSpeed.
Kita juga cek extension PHP-nya:
php -m | grep -i memcached
Kalau kosong, berarti extension-nya belum ada. Tenang, kita install. Gampang kok.
Step 1: Install Memcached via EasyApache4
Cara paling gampang di cPanel adalah lewat EasyApache4. Ini dia alurnya:
- Login ke WHM.
- Klik menu “EasyApache4” (di bawah Software).
- Klik tab “Customize”, pilih profile PHP yang lagi dipake server.
- Lanjut ke “Additional Packages”.
- Centang
php-pecl-memcacheddanmemcacheddi daftar package. - Klik “Review and Install”.
Perhatiin step 4-5 ini baik-baik. Ini yang sering kelewat. Orang-orang sering cuma install memcached service-nya doang, tapi lupa extension PHP-nya. Padahal dua-duanya harus ada — yang satu adalah server cache-nya, yang satu lagi adalah jembatan antara PHP dan cache server. Kalau cuma satu, kamu bakal nemu error aneh yang susah ditebak.
Proses install-nya bisa makan waktu beberapa menit. Ini normal, santai aja. Biarin jalan, kamu bisa sambil nyeduh kopi dulu. Monggo, nggak usah di-dudukin di depan layar terus.
Alternatifnya, kalau kamu tipe yang lebih doyan command line, bisa juga install via terminal:
yum install memcached php-pecl-memcached -y
Tapi di server cPanel yang dikelola EasyApache4, lewat WHM biasanya lebih aman dan nggak bakal bentrok sama konfigurasi PHP yang udah ada. Jadi aku saranin pakai EasyApache4 dulu, baru pakai terminal kalau butuh kontrol lebih.
Step 2: Atur Konfigurasi Memcached
Setelah install selesai, sekarang kita setting file konfigurasi. Di sistem RHEL-based (CentOS, AlmaLinux, Rocky, CloudLinux) yang biasa dipake cPanel, file konfigurasinya ada di /etc/sysconfig/memcached. Buka dengan nano atau vim:
nano /etc/sysconfig/memcached
Isinya kira-kira begini:
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1"
Nah, ada beberapa hal yang perlu kamu perhatiin di sini:
- CACHESIZE diisi berapa? Nilai ini menentukan kapasitas memori yang dipinjemin buat cache. Mulai dari 64-128 MB buat VPS kecil, atau 256-512 MB kalau VPS-mu besar dan traffiknya ramai. Ingat, jangan sampe kelebihan — ini bakal ngurangin RAM buat aplikasi lain, dan kalau server lagi tekanan memori, OOM killer bisa mulai nembak proses lain.
- OPTIONS “-l 127.0.0.1” ini penting banget buat keamanan. Artinya Memcached cuma mau dengerin request dari localhost. Kalau baris ini kosong, Memcached bakal bind ke semua interface, dan itu bahaya — karena Memcached nggak punya autentikasi sama sekali, siapa aja di internet bisa connect dan baca cache-nya.
Jujur aja, ini salah satu hal yang bikin aku dulu sempet bingung. Kok server tiba-tiba rame traffic? Ternyata Memcached kebuka ke publik karena lupa setting bind address. Padahal ini masalah serius — bisa jadi pintu masuk buat eksploitasi dan amp amplification attack. Jadi jangan sampe kelewat ya.
Setelah diubah, simpan dan restart:
systemctl restart memcached
systemctl enable memcached
Cek apakah dia jalan dengan benar:
systemctl status memcached
ss -tulpn | grep 11211
Output yang bener harusnya menampilkan memcached aktif, dan port 11211 listening di 127.0.0.1. Kalau ketemu, selamat — service-nya udah jalan.

Step 3: Aktifkan Extension Memcached di PHP
Ini step yang sering dilupain orang. Memcached service udah jalan, tapi PHP-nya belum bisa ngomong sama dia. Extension php-pecl-memcached yang tadi kita install harus diaktifkan.
Cara ceknya:
php -m | grep -i memcached
Kalau outputnya nunjukin “memcached”, berarti extension-nya udah ke-load. Kalau belum, berarti ada yang salah di proses install tadi. Balik lagi ke EasyApache4, pastikan package php-pecl-memcached kebawa di profile PHP yang aktif.
Penting buat diinget: kalau webserver-nya pake LiteSpeed (bukan Apache), pastikan PHP yang dipake LiteSpeed juga punya extension ini. Di cPanel, LiteSpeed pake handler lsphp. Kamu bisa cek handler PHP aktif di WHM, menu Software → MultiPHP Manager. Samain versi PHP-nya dengan yang diinstal extension-nya. Mismatch versi ini penyebab nomor satu kenapa “udah install tapi kok nggak jalan”.
Cara paling cepat buat mastiin extension ke-load di lsphp adalah pake phpinfo. Bikin file phpinfo di public_html:
echo '<?php phpinfo(); ?>' > /home/USER/public_html/phpinfo.php
Terus buka di browser: https://domainkamu.com/phpinfo.php — cari bagian “memcached support”. Kalau ada, berarti PHP-mu udah nyambung ke Memcached. Jangan lupa hapus file phpinfo.php setelah selesai, ya. Jangan dibiarkan — itu bocoran info server yang bisa dipake orang jahat.
Step 4: Sambungkan LiteSpeed Cache ke Memcached
Nah, ini bagian yang paling ditunggu-tunggu. Sekarang kita nyambungin LiteSpeed Cache (plugin WordPress) ke Memcached.
- Login ke dashboard WordPress kamu.
- Buka menu LiteSpeed Cache → General.
- Cari bagian “Object Cache”.
- Metode “Object Cache” diubah ke
Memcached. - Isi “Object Cache Host” dengan
127.0.0.1dan port11211. - Klik “Save Changes”, lalu klik tombol “Enable” di bagian Object Cache.
Lha, gampang kan? Begitu di-enable, LiteSpeed bakal nge-drop file object-cache.php ke folder wp-content/ kamu. File inilah yang nyambungin setiap request WordPress ke Memcached.
Kamu bisa cek apakah drop-in-nya aktif dari menu LiteSpeed Cache → General → Object Cache. Status-nya harusnya nunjukin “Enabled” sama beberapa statistik kayak hits dan misses.
Buat mastiin beneran jalan, ada satu hal yang bisa kamu cek: halaman admin WordPress biasanya nampilin status Object Cache di bagian toolbar atau dashboard. Kalau udah nunjukin connected, berarti config-nya bener.
Oh ya, satu catatan: kalau kamu pake plugin caching lain yang punya object cache sendiri (kayak W3 Total Cache atau WP Rocket), matiin dulu object cache-nya biar nggak dobel. Dua object cache aktif = konflik, dan itu bikin website malah makin lambat. Jadi pilih satu, nggih. Dokumentasi resmi LSCache bisa dicek di LiteSpeed Cache for WordPress documentation.
Step 5: Verifikasi dengan Command Line
Kalau kamu tipe yang nggak percaya sebelum lihat datanya sendiri (aku juga gitu kok), ini cara verifikasi langsung dari terminal.
Pertama, cek statistik Memcached:
printf 'statsrn' | nc 127.0.0.1 11211
Output-nya bakal panjang, tapi yang perlu kamu perhatiin ini:
- STAT bytes: total data yang disimpen di cache
- STAT get_hits: berapa request yang kena cache
- STAT get_misses: berapa request yang meleset ke database
- STAT curr_items: jumlah item di cache
Hit ratio dihitung dari get_hits dibagi total request. Kalau udah jalan beberapa jam, ratio yang sehat itu di atas 90%. Kalau masih di bawah, berarti cache-nya jarang kepake — bisa jadi karena object cache belum ke-enable, atau lifetime cache-nya kegedean.
Buat liat dashboard live-nya, kamu bisa pake command:
watch -n 2 'printf "statsrn" | nc 127.0.0.1 11211 | grep -E "get_hits|get_misses"'
Nah, ini fun. Kamu bisa refresh halaman website kamu beberapa kali, terus liat angka get_hits-nya naik. Kalau naik tiap refresh, berarti cache-nya kebuka. Kalau nggak naik sama sekali, berarti ada yang salah di config.
Troubleshooting Cepat
Nggak selamanya mulus, aku paham. Ini beberapa error yang paling sering muncul beserta solusinya. Simpan daftar ini, siapa tau bakal kepake nanti.
| Error / Gejala | Penyebab | Solusi |
|---|---|---|
| Class ‘Memcached’ not found | Extension PHP belum diaktifkan | Cek php -m | grep memcached; install php-pecl-memcached via EasyApache4 |
| Failed to connect to Memcached | Service mati atau bind di IP salah | systemctl status memcached; cek /etc/sysconfig/memcached |
| Connection refused di port 11211 | Memcached nggak listening | ss -tulpn | grep 11211; pastikan PORT=”11211″ |
| Website makin lambat setelah enable | Object cache dobel / konflik plugin | Matiin object cache plugin lain; cache drop-in harus cuma satu |
| LiteSpeed Cache nunjukin “Disconnected” | Host/port salah atau PHP extension beda versi | Samain host 127.0.0.1 port 11211; cek handler PHP aktif di MultiPHP Manager |
⚠️ Peringatan Keamanan: Backup Sebelum Melanjutkan
Sebelum mengubah file konfigurasi /etc/sysconfig/memcached atau menjalankan restart service di server production, pastikan kamu sudah:
- Backup file konfigurasinya:
cp /etc/sysconfig/memcached /etc/sysconfig/memcached.bak - Catat pengaturan lama kalau-kalau perlu rollback
- Konfirmasi bahwa server yang dituju adalah yang benar, jangan sampai salah server
Restart service bakal mengosongkan cache, dan semua aplikasi yang nyimpen data di Memcached bakal jatuh balik ke database sampai cache-nya hangat lagi. Perintah tanpa persiapan bisa bikin data hilang dan beban database naik mendadak.
Pro Tips & Warnings
Beberapa hal yang dulu aku pengen ada yang ngasih tau lebih awal:
- Memcached itu ephemeral by design. Restart daemon = cache hilang. Jadwalkan restart di jam sepi biar nggak ganggu user yang lagi aktif.
- Pantau hit ratio, bukan cuma ukuran cache. Cache 512MB dengan hit ratio 40% itu kalah bagus dibanding 128MB dengan ratio 95%. Tuning ke arah ratio, bukan ke gede-gedean memory.
- Kalau cache dan MySQL numpang di VPS yang sama, pantau RAM-nya barengan. Kepepet bareng bisa saling rebutan, dan itu ujung-ujungnya OOM juga.
- Kalau suatu saat kamu pindah ke setup multi-server, jangan buka Memcached ke jaringan tanpa firewall. Atau lebih aman lagi, migrasi ke Redis over TLS.
FAQ
Q: Apa bedanya Memcached sama Redis?
Dua-duanya sama-sama object cache di memori. Bedanya, Redis lebih fleksibel (punya struktur data lebih banyak, support persistence), tapi Memcached lebih sederhana dan ringan buat kasus caching yang gampang kayak object cache WordPress. Buat LSCache, dua-duanya didukung. Kalau server-mu udah kepake Redis, pake Redis aja. Kalau mau yang paling simpel, Memcached cukup.
Q: Berapa besar CACHESIZE yang pas buat VPS saya?
Aturan kasarnya: mulai dari 10-15% dari total RAM, lalu pantau. VPS 2GB bisa mulai dari 256MB, VPS 1GB cukup 128MB. Jangan sampe Memcached makan RAM sampe habis, karena bisa bikin OOM killer aktif dan proses lain ikut mati. Pantau dengan free -h dan stats get_hits/get_misses.
Q: Apakah saya harus restart LiteSpeed setelah install memcached?
Umumnya nggak wajib kalau PHP extension-nya udah ke-load di handler lsphp. Tapi kalau extension-nya baru diinstall setelah LiteSpeed jalan, restart LiteSpeed (atau minimal restart PHP) biar extension-nya kebaca. Di WHM, kamu bisa restart LiteSpeed dari menu Home → Restart Services → LiteSpeed Web Server.
Q: Memcached aman nggak sih dibuka ke publik?
Enggak, jangan pernah. Memcached nggak punya autentikasi sama sekali. Kalau kebuka ke internet, siapa aja bisa baca data cache-nya (yang kadang berisi data sensitif), dan bisa juga dipake buat reflection attack. Selalu bind ke 127.0.0.1, atau kalau perlu diakses antar server, gunakan firewall dan VPN/tunnel yang aman.
Related Issues
Mungkin kamu juga tertarik baca ini:
- Optimasi WordPress dengan LiteSpeed Cache
- Cara Cek Load Server Tinggi di cPanel
- Tuning MySQL/MariaDB di cPanel
- Panduan WHM EasyApache4
Penutup
Ya, gitu doang sebenernya. Konfigurasi Memcached di cPanel dengan LiteSpeed itu nggak serumit yang dibayangin. Kuncinya cuma tiga: install service-nya, pastikan extension PHP-nya aktif, terus sambungin ke LSCache. Sisanya biarin cache yang kerja.
Pernah ngalamin kasus yang mirip tapi solusinya beda? Drop di kolom komentar ya, sopo ngerti bisa bantu temen-temen lain. Aku juga penasaran. Kalau mau referensi buat dibaca ulang, bookmark aja artikel ini. Matur nuwun udah mampir, dan semoga website-mu makin kenceng. Santai aja, ini mah gampang. Sip, mugi bermanfaat!