Rumah > pangkalan data > Redis > Perbincangan ringkas tentang cara menangani tamat tempoh cache dan memori yang diduduki oleh cache dalam Redis?

Perbincangan ringkas tentang cara menangani tamat tempoh cache dan memori yang diduduki oleh cache dalam Redis?

青灯夜游
Lepaskan: 2021-11-26 19:32:23
ke hadapan
2060 orang telah melayarinya

Perbincangan ringkas tentang cara menangani tamat tempoh cache dan memori yang diduduki oleh cache dalam Redis? Artikel berikut akan membawa anda melalui strategi pemprosesan tamat tempoh cache dan mekanisme penghapusan memori dalam Redis. Saya harap ia akan membantu anda!

Perbincangan ringkas tentang cara menangani tamat tempoh cache dan memori yang diduduki oleh cache dalam Redis?

Bagaimana untuk menangani kunci tamat tempoh?

Cache kunci yang ditetapkan untuk tamat tempoh telah tamat tempoh, tetapi memori pelayan masih akan diduduki Ini disebabkan oleh dua strategi pemadaman yang menjadi asas kepada Redis:

  • (Aktif) Padam secara kerap

      Semak kunci tamat tempoh secara kerap dan rawak, serta bersihkan serta padamkannya jika tamat tempoh. (Bilangan semakan sesaat dikonfigurasikan dalam hz dalam redis.conf)
  • (Pasif) Pemadaman malas

      Apabila pelanggan meminta tamat tempoh Apabila kunci dimasukkan, redis akan menyemak sama ada kunci itu telah tamat tempoh. Strategi ini lebih mesra CPU dan tidak akan menyebabkan kehilangan terlalu banyak, tetapi penggunaan memori akan agak tinggi.
Jadi, walaupun kunci telah tamat tempoh, selagi ia tidak dibersihkan oleh redis, memori akan tetap diduduki. [Cadangan berkaitan:

Tutorial video Redis]

Jadi, apakah yang perlu saya lakukan jika memori diduduki oleh cache Redis dan perlahan?

Jika memori penuh, anda boleh menggunakan cakera keras untuk menyimpannya, tetapi ia tidak bermakna kerana cakera keras tidak sepantas memori dan akan menjejaskan prestasi redis.

Jadi, apabila memori penuh, redis menyediakan mekanisme penyingkiran cache: PENGURUSAN MEMORI

: Apabila kadar penggunaan memori mencapai, cache mula dibersihkan maxmemory

* noeviction:旧缓存永不过期,新缓存设置不了,返回错误
* allkeys-lru:清除最少用的旧缓存,然后保存新的缓存(推荐使用)
* allkeys-random:在所有的缓存中随机删除(不推荐)
* volatile-lru:在那些设置了expire过期时间的缓存中,清除最少用的旧缓存,然后保存新的缓存
* volatile-random:在那些设置了expire过期时间的缓存中,随机删除缓存
* volatile-ttl:在那些设置了expire过期时间的缓存中,删除即将过期的`
Salin selepas log masuk
Untuk lebih banyak pengetahuan berkaitan pengaturcaraan, sila layari:

Pengenalan kepada Pengaturcaraan! !

Atas ialah kandungan terperinci Perbincangan ringkas tentang cara menangani tamat tempoh cache dan memori yang diduduki oleh cache dalam Redis?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:juejin.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan