为什么要用redis而不用map做缓存?
PHP中文网
PHP中文网 2017-04-28 09:04:05
0
5
1249

为什么要使用redis来做缓存呢?
redis是key-value的形式,map也是,可以用Map替代redis吗?
如果不能替代,有什么场景或需求是只有redis能实现的呢?

PHP中文网
PHP中文网

认证0级讲师

membalas semua(5)
过去多啦不再A梦

Cache dibahagikan kepada cache tempatan dan cache yang diedarkan. Mengambil Java sebagai contoh, caching tempatan dilaksanakan menggunakan peta terbina dalam atau jambu Ciri utama ialah ia ringan dan pantas Kitaran hayat berakhir dengan pemusnahan jvm, dan dalam kes berbilang kejadian, setiap satu contoh Setiap cache perlu disimpan, dan cache tidak konsisten.

Menggunakan redis atau memcached dipanggil cache teragih Dalam kes berbilang kejadian, setiap tika berkongsi cache data dan cache adalah konsisten. Kelemahannya ialah perkhidmatan redis atau memcached perlu sentiasa tersedia, dan keseluruhan seni bina program adalah agak rumit.

我想大声告诉你
  1. Redis boleh menggunakan berpuluh-puluh gigabait memori untuk caching, tetapi Map secara amnya, JVM hanya memerlukan beberapa gigabait data untuk menjadi cukup besar

  2. Cache Redis boleh dikekalkan, Peta ialah objek memori dan data akan hilang sebaik sahaja atur cara dimulakan semula

  3. Redis boleh melaksanakan caching teragih dan Map hanya boleh wujud dalam program yang menciptanya

  4. Redis boleh mengendalikan berjuta-juta concurrency sesaat dan merupakan perkhidmatan caching profesional Map hanyalah objek biasa

  5. Redis cache mempunyai mekanisme tamat tempoh, Map sendiri tidak mempunyai fungsi ini

  6. Redis mempunyai API yang kaya, Map adalah lebih mudah

phpcn_u1582

1. Data Redis boleh disimpan secara berterusan. Jika anda ingin terus menggunakan beberapa cache selepas memulakan semula program, peta tidak boleh mencapainya
2 . Peta tidak boleh dilaksanakan
3. Redis mempunyai banyak struktur data yang mudah dikendalikan, seperti set senarai set cincang, dll. Dalam sesetengah senario, ia lebih mudah untuk dikendalikan daripada peta

阿神

1. Jika cache anda perlu memuatkan banyak kandungan, ia akan mengambil masa yang lama apabila anda memulakannya
2 Memori JVM terlalu besar dan mudah digantung
3. redis ditulis dalam C, dengan kestabilan dan prestasi Lebih baik; >

Ty80

Redis boleh digunakan secara bebas, supaya data yang dicache oleh redis akan tetap ada selepas kod tapak web dikemas kini, dan memori setempat akan dikeluarkan setiap kali tapak web dikemas kini
Data disimpan dalam redis , dan data yang dicache boleh dikongsi antara berbilang projek Jika ia adalah memori tempatan Ia tidak boleh dikongsi merentas projek

Cache tempatan tidak mudah dilihat dan diubah suai Redis mempunyai alatan yang kaya untuk mengurus data cache

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan