Optimalkan kinerja database Anda dengan menggunakan server Memcached dengan aplikasi PHP dan Python Anda
Jika Anda pernah merasakan sakitnya beban Database yang tinggi yang menyebabkan pelambatan di aplikasi web Anda dan bertanya-tanya “Apakah ada cara untuk mengurangi latensi yang disebabkan oleh kueri DB?”, maka jawaban untuk pertanyaan itu adalah ya. Memcached daemon cache memori lingkungan yang ramah ada di sini untuk menyelesaikan semua kesengsaraan Anda! Caching DB adalah salah satu metode paling sederhana untuk mengurangi beban DB dan mempercepat aplikasi web dinamis.
Memcached mendefinisikan dirinya sebagai kinerja tinggi, sistem cache objek memori terdistribusi, bersifat generik, tetapi awalnya dimaksudkan untuk digunakan dalam mempercepat aplikasi web dinamis dengan mengurangi beban database. Dikembangkan oleh Brad Fitzpatrick untuk situs webnya LiveJournal pada tahun 2003.
Pada artikel ini, kita akan melihat cara menginstal dan mengkonfigurasi Memcached di Ubuntu 20.04 dan melihat klien khusus bahasanya.
Prasyarat
Sistem yang diinstal dengan Ubuntu 20.04 dengan pengguna dengan hak administratif, yaitu: sudo
pengguna.
Instalasi
Memcached tersedia di repositori resmi Ubuntu 20.04, selain Memcached kami juga akan menginstal alat CLI yang dikenal sebagai libmemcached-tools
untuk mengelola Memcached. Jalankan saja perintah berikut untuk menginstal keduanya
sudo apt install memcached libmemcached-tools
Verifikasi Instalasi
Setelah instalasi selesai, daemon Memcached dimulai di latar belakang dengan sendirinya. Untuk memverifikasi instalasi, kita dapat menggunakan perintah dari libmemcached-tools
paket untuk mendapatkan statistik server Memcached. Entah lari
memcstat --servers localhost
atau
memcstat --servers 127.0.0.1
Itu memcstat
perintah menunjukkan statistik menjalankan server. Perintah di atas akan menghasilkan output yang ditampilkan di bawah ini.
Berbagai statistik seperti waktu aktif
dalam hitungan detik, Versi: kapan
dan pid
akan ditampilkan sebagai keluaran. Namun, jika tidak ada output yang ditampilkan, kemungkinan Memcached tidak berjalan. Oleh karena itu, Anda harus menjalankan perintah berikut untuk memulai server Memcached.
sudo systemctl start memcached
Untuk menjalankan server Memcached pada startup sistem gunakan perintah berikut.
sudo systemctl aktifkan memcached
Mengkonfigurasi Memcached
Jika Anda telah menginstal memcached di server situs web itu sendiri, tidak perlu mengubah file konfigurasi karena memcached telah dikonfigurasikan sebelumnya untuk bekerja dengan localhost.
Di sisi lain, jika Anda telah menginstal Memcached pada sistem terpisah, Anda perlu mengubah konfigurasi agar server jarak jauh dapat mengakses server Memcached.
Menyiapkan Akses Jarak Jauh untuk Server Memcached
Memcached rentan terhadap serangan DDoS (Distributed Denial of Service). Aturan firewall yang salah dan port UDP yang terbuka akan membuat server Anda terbuka dan rentan terhadap serangan DDoS.
Untuk mengurangi risiko, kami dapat menonaktifkan protokol UDP untuk Memcached dalam konfigurasi atau mengatur firewall hanya untuk mengizinkan server tepercaya.
Di luar kotak, Ubuntu dikirimkan tanpa port TCP atau UDP terbuka. Selanjutnya, daemon firewall ufw
(Firewall tidak rumit) tidak diaktifkan secara default.
Kami akan mengaktifkan firewall dan mengatur konfigurasi Memcached sehingga kami dapat mengurangi kerentanan DDoS.
Pertama, aktifkan ufw
dengan menjalankan perintah berikut:
sudo systemctl aktifkan ufw
Kemudian mulai ufw
service dengan menjalankan perintah di bawah ini:
sudo systemctl start ufw
Dengan Firewall berjalan, akhirnya kita dapat mengatur aturan firewall. Pertama, aktifkan port 22 untuk mengizinkan koneksi SSH. SSH diperlukan untuk mengakses server yang diinginkan dari jarak jauh.
sudo ufw izinkan 22
Kedua, Anda perlu mengetahui alamat IP klien, yaitu host aplikasi web dan alamat IP server, yaitu server Memcached.
Untuk contoh ini, mari kita asumsikan IP Klien menjadi 192.168.0.4
dan IP server Memcached menjadi 192.168.0.5
pada jaringan lokal.
Jadi untuk mengizinkan akses jarak jauh dari server memcached ke server klien, jalankan:
sudo ufw izinkan dari 192.168.0.4 ke port apa pun 11211
Ganti 192.168.0.4
dengan alamat IP Klien yang Anda inginkan.
Selanjutnya, edit file konfigurasi Memcached yang terletak di /etc/memcached.conf
dengan berlari nano
memerintah.
sudo nano /etc/memcached.conf
Itu memcached.conf
file konfigurasi akan terbuka dengan editor nano, cari -l 127.0.0.1
baris dalam konfigurasi dan ganti 127.0.0.1
dengan IP Server Memcached Anda atau dalam hal ini 192.168.0.5
.
Setelah mengganti pers ctrl+o
untuk menulis ke file konfigurasi dan tekan enter, tekan ctrl+x
untuk keluar dari nano.
Mulai ulang server Memcached dan ufw
firewall dengan menjalankan perintah di bawah ini.
sudo systemctl restart memcached ufw
Sekarang kita selesai dengan instalasi dan konfigurasi server Memcached di Ubuntu 20.04.
Menghubungkan ke Server Memcached
Untuk menggunakan server Memcached, Anda perlu menginstal klien khusus bahasa. Untungnya, Memcached memiliki dukungan untuk banyak bahasa populer.
Jadi mari kita lihat cara menginstal php
dan ular piton
klien untuk Memcached.
PHP adalah bahasa skrip sisi server paling populer dan Memcached sebagian besar digunakan oleh pengembang web untuk meningkatkan kinerja server aplikasi web yang didukung oleh PHP.
Untuk menginstal dukungan memcached di php, Lari:
sudo apt install php-memcached
Python juga memiliki beberapa perpustakaan yang dapat bekerja dan berinteraksi dengan server Memcached seperti di-cache
atau python-memcached
.
Anda dapat menginstal memcached untuk python dengan menjalankan perintah pip berikut:
pip instal pymemcache
pip install python-memcached
Sebagai kesimpulan, kami telah melihat instalasi, konfigurasi, dan beberapa klien khusus bahasa Memcached di Ubuntu 20.04.
Untuk mengetahui lebih banyak seluk beluk dan penggunaan lanjutan Memcached, lihat Memcached Wiki.