Memcached adalah software gratis dan open source yang menyimpan cache dalam memory. Memcached paling sering digunakan untuk mempercepat aplikasi dengan caching berbagai objek dari hasil panggilan database.
Kami sarankan Anda untuk menguji setiap tutorial atau panduan yang ada di Internet di virtual machine (vmware atau virtualbox) sebelum menerapkan ke server produksi, agar tidak mengacaukan sistem yang berjalan ketika ada kesalahan.
Dalam tutorial ini, kita akan membahas proses menginstal dan mengkonfigurasi Memcached versi terbaru di Centos 7.
Persiapan
Sebelum melanjutkan dengan tutorial ini, pastikan Anda masuk sebagai pengguna biasa dengan hak istimewa sudo.
Install Memcached
Paket memcached disertakan dalam repositori default CentOS 7. Instalasi pun cukup mudah, cukup ikuti langkah-langkah di berikut :
sudo yum install memcached libmemcached
Paket libmemcached
berisi beberapa alat baris perintah untuk mengelola server Memcached.
Setelah instalasi selesai, mulai dan aktifkan layanan Memcached
sudo systemctl start memcached sudo systemctl enable memcached
Pada poin ini, Memcached telah terinstal dan berjalan di server CentOS 7 Anda.
Konfigurasi Memcached di Ubuntu
Memcached dapat dikonfigurasi dengan mengedit file /etc/sysconfig/memcached
. Secara default, Memcached dikonfigurasikan untuk listen koneksi di semua interface.
Dalam sesi di bawah ini, kita akan membahas cara bagaimana konfigurasi memcached untuk akses lokal dan remote access.
Ketika Memcached dikonfigurasi dengan tidak tepat, dapat digunakan untuk melakukan serangan distributed denial-of-service (DDoS).
Local Access
Jika klien yang terhubung ke server juga berjalan di host yang sama, disarankan untuk mengatur layanan Memcached untuk listen koneksi dari localhost saja.
Untuk melakukannya, buka file konfigurasi memcached dengan teks editor Anda:
sudo nano /etc/sysconfig/memcached
Dalam parameter OPTIONS, tambahkan -l 127.0.0.1
. Pengaturan ini akan menginstruksikan Memcached untuk bind pada interface yang ditentukan saja.
OPTIONS="-l 127.0.0.1"
Restart Memcached agar perubahan segera di terapkan :
sudo systemctl restart memcached
Remote Access
Jika aplikasi yang akan terhubung ke Memcached di-host di remote server, Anda perlu mengkonfigurasi firewall dan mengizinkan akses ke port Memcached 11211 hanya dari alamat IP klien.
Contoh berikut mengasumsikan bahwa Anda ingin terhubung ke server Memcached melalui jaringan pribadi. IP server Memcached adalah 192.168.100.20
dan alamat IP klien adalah 192.168.100.30
CentOS dilengkapi dengan alat konfigurasi firewall FirewallD
. Perintah di bawah ini akan membuat zona baru bernama memcached
, buka port 11211
dan izinkan akses hanya dari alamat IP klien.
sudo firewall-cmd --new-zone=memcached --permanent sudo firewall-cmd --zone=memcached --add-port=11211/udp --permanent sudo firewall-cmd --zone=memcached --add-port=11211/tcp --permanent sudo firewall-cmd --zone=memcached --add-source=192.168.100.30/32 --permanent sudo firewall-cmd --reload
Setelah firewall Anda dikonfigurasi, langkah selanjutnya adalah mengedit konfigurasi Memcached dan mengatur layanan untuk listen pada private network server:
Buka file konfigurasi memcached:
sudo nano /etc/sysconfig/memcached
Pada bagian parameter OPTIONS
tambahakan IP address server -l 192.168.100.20:
OPTIONS="-l 192.168.100.20"
Simpan file dan restart layanan memcached dengan mengetik perintah :
sudo systemctl restart memcached
Koneksi ke Memcached
Untuk terhubung ke server Memcached, Anda perlu menggunakan klien khusus untuk menterjemahkan bahasa pemrograman.
Koneksi ke Memcached menggunakan PHP
Untuk menggunakan Memcached sebagai caching database untuk aplikasi PHP Anda seperti WordPress, Drupal, Joomla atau Magento, Anda perlu menginstal ekstensi php--pecl-memcached
:
sudo apt install php-pecl-memcache
Koneksi ke Memcached menggunakan Python
Ada beberapa Python libraries untuk berinteraksi dengan memcache. Anda dapat menginstal libraries pilihan Anda menggunakan pip:
pip install pymemcache
pip install python-memcached
Kesimpulan
Anda telah belajar cara menginstal Memcached di server CentOS 7. Untuk informasi lebih lanjut tentang topik ini, konsultasikan dengan Memcached Wiki.