Cara menukar memori maksimum redis
- 4474
- 1276
- Marcus Kassulke
Untuk mengkonfigurasi jumlah maksimum memori yang akan digunakan Redis, anda boleh menggunakan 'MaxMemory'
Arahan dalam fail konfigurasi Redis ('Redis.conf '). Arahan ini mengambil nilai integer, yang mewakili bilangan maksimum bait yang akan digunakan Redis untuk menyimpan data dalam ingatan.
Contohnya, untuk menetapkan memori maksimum ke '1GB', (atau 1024*1024*1024 bait) Anda boleh menggunakan konfigurasi berikut:
MaxMemory 10737418241 | MaxMemory 1073741824 |
Anda juga boleh menentukan polisi bagaimana Redis harus menangani keadaan apabila had memori maksimum dicapai. Ini dilakukan dengan menggunakan 'MaxMemory-Policy'
Arahan, yang boleh mengambil salah satu nilai berikut:
- Noeviction: Redis akan mengembalikan ralat apabila had memori maksimum dicapai dan kunci baru perlu ditambah.
- allkeys-lru: Redis akan mengeluarkan kekunci yang paling baru -baru ini yang digunakan untuk menjadikan ruang untuk kunci baru.
- Volatile-LRU: Redis akan mengeluarkan kekunci yang paling baru -baru ini yang digunakan di kalangan kekunci dengan set tamat tempoh untuk menjadikan ruang untuk kunci baru.
- Allkeys-Random: Redis akan memilih kunci secara rawak untuk dibuang untuk menjadikan ruang untuk kekunci baru.
- Random yang tidak menentu: Redis secara rawak akan memilih kekunci secara rawak dengan set tamat untuk dibuang untuk menjadikan ruang untuk kunci baru.
- Volatile-TTL: Redis akan mengeluarkan kunci dengan masa terpendek untuk hidup untuk menjadikan ruang untuk kunci baru.
Contohnya, untuk menetapkan 'MaxMemory-Policy' ke 'Allkeys-lru', Anda boleh menggunakan konfigurasi berikut:
MaxMemory-Policy Allkeys-LRU1 | MaxMemory-Policy Allkeys-LRU |
Perhatikan bahawa MaxMemory dan MaxMemory-Policy Arahan mesti ditetapkan dalam fail konfigurasi Redis (Redis.conf) dan tidak dapat ditetapkan menggunakan arahan set konfigurasi semasa runtime. Anda perlu memulakan semula Redis untuk perubahan yang akan berlaku.
Ia juga perlu diperhatikan bahawa Redis secara automatik akan cuba memori secara automatik apabila kehabisan memori yang ada, dengan melepaskan memori yang digunakan oleh kekunci yang paling baru digunakan baru -baru ini. Walau bagaimanapun, proses ini terhad oleh MaxMemory-Samples Arahan, yang menentukan bilangan kunci yang akan diterokai oleh Redis untuk menentukan kunci yang akan dikeluarkan. Secara lalai, nilai ini ditetapkan kepada 3, jadi Redis hanya akan mencuba 3 kekunci untuk menentukan kunci yang akan dikeluarkan. Anda boleh menyesuaikan nilai ini jika diperlukan dengan menggunakan MaxMemory-Samples Arahan dalam fail konfigurasi Redis.