Menyiapkan Redis untuk Penyimpanan Sesi PHP di Linux
- 4819
- 1446
- Hector Kuhic
Redis adalah penyimpanan struktur data dalam memori, banyak digunakan sebagai basis data, cache, dan broker pesan. Ini sangat berguna untuk mengelola sesi PHP karena kinerja tinggi, latensi rendah, dan kemampuan kegigihan data. Di artikel ini, kami akan memandu Anda melalui seluruh proses menginstal, mengkonfigurasi, dan menggunakan Redis sebagai toko sesi untuk aplikasi PHP.
Menginstal Redis di sistem Anda
Pertama, Anda perlu menginstal Redis pada distribusi Linux Anda. Proses instalasi bervariasi tergantung pada manajer paket yang digunakan oleh distribusi Anda. Berikut beberapa contoh:
- Untuk sistem berbasis Debian (E.G., Ubuntu), gunakan manajer paket yang apt:
pembaruan apt sudo
sudo apt menginstal redis-server
- Untuk sistem berbasis rhel (e.G., Centos, Fedora), Gunakan Yum Package Manager:
sudo yum instal redis
- Untuk Arch Linux, gunakan Pacman Package Manager:
Sudo Pacman -S Redis
Setelah instalasi, aktifkan dan mulai layanan Redis:
sudo systemctl memungkinkan redis
sudo systemctl mulai redis
Memasang ekstensi php redis
Untuk menggunakan redis untuk sesi php, Anda perlu menginstal ekstensi php redis. Proses instalasi tergantung pada versi PHP dan manajer paket Anda.
- Untuk sistem berbasis Debian (E.G., Ubuntu), gunakan manajer paket yang apt:
sudo apt menginstal php-redis
- Untuk sistem berbasis rhel (e.G., Centos, Fedora), Gunakan Yum Package Manager:
sudo yum instal php-pecl-redis
Untuk Arch Linux, gunakan Pacman Package Manager:
Sudo Pacman -S PHP -Redis
Setelah instalasi, restart server web Anda untuk memuat ekstensi PHP Redis:
sudo systemctl restart apache2 # untuk apache sudo systemctl restart nginx # untuk nginx12 | sudo systemctl restart apache2 # untuk apachesudo systemctl restart nginx # untuk nginx |
Mengkonfigurasi PHP untuk menggunakan Redis untuk manajemen sesi
Untuk mengonfigurasi PHP untuk menggunakan Redis untuk manajemen sesi, edit Anda 'php.ini ' file (biasanya ditemukan di '/etc/php/versi/fpm/' atau '/etc/php/versi/apache2/' untuk sistem yang berbasis di Debian, atau '/etc/php.ini ' untuk sistem berbasis rhel). Tambahkan atau ubah baris berikut:
sidang.save_handler = sesi redis.save_path = "tcp: // localhost: 6379"12 | sidang.save_handler = redissession.save_path = "tcp: // localhost: 6379" |
Ganti LocalHost dengan alamat IP Redis Server Anda jika tidak berjalan pada mesin yang sama dengan aplikasi PHP Anda. Mengganti '6379' dengan nomor port yang sesuai jika server Redis Anda berjalan di port yang berbeda.
Setelah mengedit PHP.File INI, restart server web Anda untuk menerapkan perubahan:
sudo systemctl restart apache2 # untuk apache sudo systemctl restart nginx # untuk nginx sudo systemctl restart php-fpm # untuk php-fpm (jika berlaku)123 | sudo systemctl restart apache2 # untuk apachesudo systemctl restart nginx # untuk nginxsudo systemctl restart php-fpm # untuk php-fpm (jika berlaku) |
Menguji sesi php bertenaga redis
Untuk menguji apakah aplikasi PHP Anda menggunakan REDIS untuk manajemen sesi, buat skrip PHP sederhana dengan konten berikut:
Simpan skrip ini sebagai 'session_test.php ' dan unggah ke server web Anda. Akses skrip di browser web Anda. Penghitung harus bertambah pada setiap halaman refresh, mengkonfirmasi bahwa sesi php disimpan di redis.
Mengamankan dan mengoptimalkan sesi php bertenaga redis Anda
Untuk lingkungan produksi, penting untuk mengamankan dan mengoptimalkan sesi PHP bertenaga Redis Anda untuk memastikan integritas kinerja tinggi dan data. Berikut beberapa rekomendasi:
- Konfigurasikan otentikasi kata sandi redis: Edit file konfigurasi redis Anda (biasanya ditemukan di '/etc/redis/redis.conf ') dan atur 'Persyaratan' Petunjuk ke kata sandi yang kuat:
NequirePass your_secure_password
Kemudian, perbarui 'php.ini ' file untuk memasukkan kata sandi di 'sidang.save_path ':
sidang.save_path = "tcp: // localhost: 6379?auth = your_secure_password "1 sidang.save_path = "tcp: // localhost: 6379?auth = your_secure_password " - Aktifkan Persistensi Data Redis: Secara default, Redis menyimpan data hanya dalam memori. Untuk bertahan data sesi pada disk, aktifkan snapshot RDB atau AOF Logging di file konfigurasi Redis Anda. Misalnya, untuk mengaktifkan snapshot RDB, uncomment atau tambahkan baris berikut '/etc/redis/redis.conf ': Simpan 900 1
1 Simpan 900 1 Konfigurasi ini akan membuat snapshot dari data redis setiap 15 menit jika setidaknya satu kunci telah dimodifikasi.
- Mengoptimalkan Pengaturan Redis: Bergantung pada sumber daya server Anda dan persyaratan aplikasi Anda, Anda mungkin perlu mengoptimalkan pengaturan redis untuk mencapai kinerja terbaik. Beberapa opsi termasuk mengutak -atik 'MaxMemory' Petunjuk, menyesuaikan 'MaxMemory-Policy', dan menyempurnakan nilai batas waktu.
- Monitor Kinerja Redis: Secara teratur memantau kinerja server Redis Anda menggunakan alat seperti 'redis-cli', 'redis-stat', atau 'redis_exporter' untuk mengidentifikasi potensi hambatan atau masalah.
Restart layanan redis dan server web Anda untuk menerapkan perubahan.
Kesimpulan
Panduan lengkap ini telah menunjukkan kepada Anda cara menginstal, mengkonfigurasi, dan menggunakan Redis sebagai toko sesi untuk aplikasi PHP. Dengan memanfaatkan Redis untuk manajemen sesi PHP, Anda dapat secara signifikan meningkatkan kinerja dan skalabilitas aplikasi web Anda. Pastikan untuk mengikuti praktik terbaik untuk mengamankan dan mengoptimalkan sesi PHP bertenaga Redis Anda untuk memastikan pengalaman pengguna sebaik mungkin dan mempertahankan integritas data sesi Anda.
- « Cara memeriksa apakah file tidak ada di bash
- Cara mengkloning semua cabang jarak jauh di repositori git »