Menyiapkan Redis untuk Penyimpanan Sesi PHP di Linux

Menyiapkan Redis untuk Penyimpanan Sesi PHP di Linux

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 nginx
12sudo 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"
12sidang.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)
123sudo 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:

12345678910

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 "
    1sidang.save_path = "tcp: // localhost: 6379?auth = your_secure_password "

  • Restart layanan redis dan server web Anda untuk menerapkan perubahan.

  • 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
    1Simpan 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.

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.