快取的差異
#快取分為本機快取和分散式快取。 (推薦學習:Redis視訊教學)
以java為例,使用自帶的map或guava實現的是本地緩存,最主要的特點是輕量以及快速,生命週期隨著jvm的銷毀而結束,並且在多實例的情況下,每個實例都需要各自保存一份緩存,緩存不具有一致性。
使用redis或memcached之類的稱為分散式緩存,在多實例的情況下,各實例共用一份緩存數據,緩存具有一致性。缺點是需要維持redis或memcached服務的高可用,整個程式架構上較為複雜。
當然如果只是將少量資料保存作為快取且沒有持久化的需求,那麼完全可以用Map做快取。
redis和簡單的map有什麼不同:
1、Redis 可以用幾十G 記憶體來做緩存,Map 不行,一般JVM 也就分幾個G 資料就夠大了
2、Redis 的快取可以持久化,Map 是記憶體對象,程式一重啟資料就沒了
3、Redis 可以實現分散式的緩存,Map 只能存在創建它的程式裡
4、Redis 可以處理每秒百萬級的並發,是專業的快取服務,Map 只是普通的物件
5、R#edis 快取有過期機制,Map 本身無此功能
# #6、Redis 有豐富的API,Map 就簡單太多了
更多Redis相關技術文章,請造訪Redis資料庫使用入門教學欄位學習!
以上是redis和簡單的map有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!