Halaman ini menjelaskan kebijakan maxmemory dan konfigurasi Redis lainnya yang tersedia untuk Memorystore for Redis. Anda tidak perlu memulai ulang instance Redis jika Anda menyesuaikan konfigurasi.
Untuk mengetahui petunjuk tentang cara mengubah konfigurasi yang tercantum di bawah, lihat Mengonfigurasi Instance Redis.
Kebijakan Maxmemory
Saat memori instance Redis Anda penuh, dan penulisan baru masuk, Redis akan mengeluarkan kunci untuk memberi ruang bagi penulisan berdasarkan kebijakan maxmemory instance Anda. Kebijakan maxmemory default untuk Memorystore for Redis adalah volatile-lru. Anda
juga dapat menggunakan salah satu kebijakan maxmemory berikut:
noeviction: Menampilkan error saat instance Redis mencapai maxmemory. Tidak menimpa atau mengeluarkan data apa pun.allkeys-lfu: Tersedia di Redis versi 4.0 atau yang lebih baru. Mengeluarkan kunci yang paling jarang digunakan (LFU) dari seluruh set kunci.allkeys-lru: Mengeluarkan kunci yang paling jarang digunakan (LRU) dari seluruh kumpulan kunci.volatile-lfu: Tersedia di Redis versi 4.0 atau yang lebih baru. Menghapus kunci yang paling jarang digunakan yang ditetapkan dengan masa berlaku TTL (time to live).volatile-lru: Mengeluarkan kunci yang paling jarang digunakan (LRU) yang ditetapkan dengan masa berlaku TTL.allkeys-random: Mengeluarkan kunci acak dari seluruh ruang kunci.volatile-random: Mengeluarkan kunci acak dari antara kunci yang ditetapkan dengan masa berlaku TTL.volatile-ttl: Mengeluarkan kunci dengan TTL terpendek dari antara kunci yang ditetapkan dengan masa berlaku TTL.
Parameter konfigurasi yang dapat diubah
Anda dapat mengubah parameter berikut saat membuat atau mengupdate instance Memorystore for Redis.
| Parameter | Deskripsi | Nilai yang dapat diterima |
|---|---|---|
| activedefrag | Redis versi 4.0, atau yang lebih baru. Berfungsi untuk mengosongkan memori instance yang terikat oleh perilaku fragmentasi memori OSS Redis standar. | no (default)yes |
| database | Redis versi 3.2, atau yang lebih baru. Menentukan jumlah database di server Redis. | 1-100Defaultnya adalah 16 |
| lazyfree-lazy-eviction | Redis versi 7.0, atau yang lebih baru. Mengaktifkan/menonaktifkan pelepasan memori lambat untuk pengusiran. no menonaktifkan konfigurasi ini. Untuk mengetahui informasi selengkapnya, lihat REDIS.CONF |
no (default)yes |
| lazyfree-lazy-expire | Redis versi 7.0, atau yang lebih baru. Mengaktifkan/menonaktifkan lazy free untuk expire. no menonaktifkan konfigurasi ini. Untuk mengetahui informasi selengkapnya, lihat REDIS.CONF |
no (default)yes |
| lazyfree-lazy-user-del | Redis versi 7.0, atau yang lebih baru. Mengaktifkan/menonaktifkan lazy free untuk DEL pengguna. no menonaktifkan konfigurasi ini. Untuk mengetahui informasi selengkapnya, lihat REDIS.CONF |
no (default)yes |
| lazyfree-lazy-user-flush | Redis versi 7.0, atau yang lebih baru. Mengaktifkan/menonaktifkan lazy free untuk flush pengguna. no menonaktifkan konfigurasi ini. Untuk mengetahui informasi selengkapnya, lihat REDIS.CONF |
no (default)yes |
| lfu-decay-time | Redis versi 4.0, atau yang lebih baru. Waktu, dalam menit, sebelum penghitung frekuensi LFU untuk kunci tertentu dibagi dua (atau, jika penghitungnya < 10, dikurangi 1). Lihat file REDIS.CONF untuk mengetahui informasi tambahan. | Bilangan bulat positif dari jenis data 'long' (default=1) |
| lfu-log-factor | Redis versi 4.0, atau yang lebih baru. Menentukan cara penghitung frekuensi merepresentasikan hit tombol. Sebelum mengubah konfigurasi default, baca cara kerja konfigurasi lfu-log-factor dalam file REDIS.CONF. |
Bilangan bulat positif dari jenis data 'long' (default=10) |
| maxmemory-clients | Redis 7.0, atau yang lebih baru. Konfigurasi ini memungkinkan pengguna mengontrol penggunaan memori maksimum klien. Total penggunaan memori klien normal/pubsub. Jika batas tercapai, klien dengan penggunaan memori tertinggi akan dikeluarkan |
Defaultnya adalah 0% (tidak ada batasan). Nilai yang dapat diterima adalah nilai persentase bilangan bulat antara 0% dan 100%. Mewakili persentase
maxmemory instance yang membatasi penyimpanan klien. |
| maxmemory-gb | Menetapkan batas yang dapat disesuaikan saat kebijakan pengusiran Anda berlaku.
Misalnya, jika Anda memiliki instance 10 GB dan Anda menetapkan maxmemory-gb ke
8, kebijakan pengusiran Anda akan berlaku saat data Anda menempati 8
GB memori instance Anda. Hal ini membuat Anda memiliki overhead memori sebesar 2 GB. Secara
default, maxmemory-gb disetel ke kapasitas instance Anda. Untuk mengetahui detail tentang cara terbaik menggunakan konfigurasi maxmemory-gb, lihat praktik terbaik pengelolaan memori Memorystore.Konfigurasi ini ditampilkan sebagai maxmemory-percent di
konsolGoogle Cloud . Saat menggunakan konsol, Anda menetapkan maxmemory-percent
sebagai persentase kapasitas instance, bukan jumlah GB tertentu.
|
Jumlah GB yang dinyatakan sebagai bilangan bulat atau desimal. Contoh: 10 menetapkan maxmemory-gb sebesar 10 GB.1.5 menetapkan maxmemory-gb sebesar 1,5 GB.maxmemory-gb dapat dikurangi hingga minimum 20% dari kapasitas instance Anda.
|
| maxmemory-policy | Menentukan perilaku yang diikuti Redis saat data instance mencapai batas maxmemory-gb. Lihat kebijakan Maxmemory untuk mengetahui deskripsi perilaku setiap kebijakan.Untuk mengetahui informasi tambahan tentang kebijakan maxmemory Redis open source, lihat halaman cache LRU Redis open source |
noevictionallkeys-lruvolatile-lru (default)allkeys-randomvolatile-randomvolatile-ttlvolatile-lfu (Redis versi 4.0 dan yang lebih baru)allkeys-lfu (Redis versi 4.0 dan yang lebih baru)
|
| notify-keyspace-events | Mengizinkan klien berlangganan notifikasi pada peristiwa keyspace tertentu. Lihat halaman Redis Keyspace Notifications di situs Redis untuk mengetahui informasi selengkapnya. | "" (default)KPeristiwa keyspace, dipublikasikan dengan awalan __keyspace@ EPeristiwa keyevent, dipublikasikan dengan awalan __keyevent@ gPerintah generik (tidak spesifik per jenis) seperti DEL, EXPIRE, atau RENAME $Perintah string lPerintah daftar sPerintah set hPerintah hash zPerintah set yang diurutkan xPeristiwa yang sudah berakhir (peristiwa yang dihasilkan setiap kali kunci berakhir) ePeristiwa yang dikeluarkan (peristiwa yang dihasilkan saat kunci dikeluarkan karena maxmemory) AAlias untuk g$lshzxe, sehingga string "AKE" berarti semua peristiwa. |
stream-node-max-bytes |
Redis versi 5.0, atau yang lebih baru. Struktur data stream Redis menggunakan radix tree untuk menyimpan item. Parameter stream-node-max-bytes menetapkan jumlah maksimum byte yang tersedia untuk menyimpan item dalam satu node tree. Setelah batas ini tercapai, item baru akan disimpan dalam node tree baru. |
Bilangan bulat 0 dan yang lebih tinggi. (default=4096) 0 menunjukkan node pohon dengan ukuran tidak terbatas. |
stream-node-max-entries |
Redis versi 5.0, atau yang lebih baru. Struktur data stream Redis menggunakan radix tree untuk menyimpan item. Parameter stream-node-max-entries menetapkan jumlah item yang dapat disimpan dalam satu node. Jika batas ini tercapai, item baru akan disimpan dalam node tree baru. |
Bilangan bulat 0 dan yang lebih tinggi. (default=100) 0 menunjukkan node pohon dengan jumlah item yang tidak terbatas. |
timeout |
Jumlah detik sebelum koneksi klien yang tidak aktif dihentikan. Namun, jika timeout disetel ke 0, klien yang tidak aktif tidak akan mengalami waktu tunggu dan tetap terhubung hingga klien mengeluarkan penghentian.
|
0 (default) Bilangan bulat >= 120 Unit = detik |
Parameter konfigurasi yang tidak dapat diubah
Tabel berikut mencantumkan parameter konfigurasi Redis yang tidak dapat diubah di Memorystore for Redis dan nilai defaultnya. Lihat dokumentasi konfigurasi Redis untuk mengetahui informasi mendetail tentang parameter konfigurasi ini.
| Parameter | Nilai Default |
|---|---|
lua-time-limit |
5000 |
hash-max-ziplist-entries |
2048 |
hash-max-ziplist-value |
1024 |
list-max-ziplist-size |
-2 |
list-compress-depth . |
0 |
set-max-intset-entries |
512 |
zset-max-ziplist-entries |
1024 |
zset-max-ziplist-value |
1024 |
hll-sparse-max-byte |
3000 |
activerehashing |
ya |
hz |
10 |
databases |
16 |
maxclients |
65000 |
slowlog-log-slower-than |
10000 |
slowlog-max-len |
128 |
repl-diskless-load |
swapdb |
io-threads-do-reads |
ya |
Langkah berikutnya
- Pelajari lebih lanjut konfigurasi Redis di halaman konfigurasi Redis open source