Singgahan objek menyimpan HASIL sebuah pekerjaan di memori supaya permintaan berikutnya tidak mengulanginya. Di situs yang menanyai basis datanya dengan pertanyaan yang sama di setiap halaman, dampaknya besar. Di situs yang halamannya lambat karena sebab lain, dampaknya nol.
Kapan ia menolong
- Sistem konten yang memuat puluhan baris pengaturan pada setiap permintaan - WordPress menanyakan opsinya di setiap halaman tanpa kecuali.
- Menu, taksonomi, metadata pengguna: kecil, berulang, serupa persis.
- Sesi, yang kalau tidak akan menjadi ribuan berkas kecil di cakram.
Kapan ia tidak menolong
Halaman yang lambat karena SATU kueri atas sebuah tabel besar tetap sama lambatnya. Singgahan menghemat pekerjaan yang berulang, bukan pekerjaan yang mahal. Perbaiki dulu kuerinya; menyinggahkannya hanya menyembunyikan betapa buruknya ia sampai singgahannya dingin.
Tetapkan batas memori dan kebijakan pengusiran
maxmemory 256mb
maxmemory-policy allkeys-lru
Tanpa maxmemory, Redis tumbuh sampai mesin itu kehabisan memori, lalu kernelnya membunuh sesuatu - sering kali basis datanya. allkeys-lru justru membuang kunci yang paling lama tak dipakai, dan itulah yang seharusnya dikerjakan sebuah singgahan.
Ikat ia ke localhost
Redis tak punya otentikasi secara bawaan. Redis yang terjangkau dari internet adalah pintu terbuka: ia bisa disuruh menulis berkas. Ikat ke 127.0.0.1 dan syaratkan sebuah kata sandi.
bind 127.0.0.1
requirepass a-long-random-string
Pastikan ia memang dipakai
redis-cli info stats | grep -E "keyspace_hits|keyspace_misses"
Angka kena yang jauh di atas angka luput berarti ia bekerja. Luput yang mendominasi berarti kuncinya kedaluwarsa terlalu cepat atau ada sesuatu yang mengosongkannya pada setiap permintaan.
Singgahan halaman dan singgahan objek itu dua hal yang berbeda. Singgahan halaman menyajikan satu halaman jadi seutuhnya dan menolong pengunjung tanpa nama; singgahan objek menolong yang sudah masuk, yang halamannya tak bisa dibagi bersama.