Redis基礎知識

2021-10-09 06:53:05 字數 861 閱讀 1634

樂觀鎖watch相當於mysql裡面的version

jedis採用的是直連的方式,多個執行緒的操作不安全,避免的話採用的是池化技術

redis資料使用的是記憶體中,因此廣泛應用在快取裡面

使用當作快取的原因:模擬一下作業系統裡面的區域性性原理

使用redis不用本地的map的原理:map屬於本地快取,生命週期伴隨著jvm存在,多個例項情況下,使用redis分布式快取,可以的實現快取的一致性。

redis執行緒模型:內部使用的是檔案事件處理器(file event handler),單執行緒,通過io多路復用機制實現同時監聽多個socket,根據socket上事件來選擇對應的事件處理器進行處理。

檔案事件處理器包括四個部分:

多個socket可能會併發產生不同的操作,每個操作對應不同的檔案事件,io多路復用程式會將監聽多個socket,將socket產生的事件放在佇列中,事件分派器將佇列中取出乙個時間,將該事件交給相應的事件處理器進行處理。

redis與memmcached的區別

redis支援更加豐富的資料型別,除去一般的kv,還有set、map,zset、hash等,memecached支援簡單的資料型別與string

redis支援資料的持久化,可以將記憶體中的資料儲存在的磁碟中,重啟以後可以進行載入;memecached不行

集群模式:redis支援原生的cluster模型,memecached沒有原生的集群模式,需要依靠客戶端實現集群分片

memecached是多執行緒,nio復用的網路模型;redis是單執行緒多路io復用模型

redis過期時間

為了保證redis作為快取資料庫,儲存都是熱點資料, 需要進行記憶體淘汰——六種淘汰機制

持久化機制

快取穿透與快取雪崩

Redis基礎知識

1 redis是開源的高效能鍵值對 key value 資料庫 通過提供各種鍵值資料型別來適應不同場景下的儲存需求,並借助許多高層級的介面使其可以勝任如快取 佇列系統等不同的角色。2 remote dictionary server,以字典結構儲存資料,並允許其他應用通過tcp協議讀寫字典中的內容 ...

redis基礎知識

redis是乙個基於記憶體的高效能key value 1.redis五大基本資料型別 字串 string set get 雜湊 hash hmset hmgetall 鍊錶 list 按照插入順序可以新增乙個元素列表的頭部 左邊 和尾部 右邊 lpush rpush lrange 集合 set sa...

redis基礎知識

redis remote dictionary sever 遠端字典服務,是乙個開源的使用ansi c語言編寫,支援網路,可基於記憶體亦可持久化的日誌型,key value資料庫,並支援多種語言的api。免費和開源,也被稱之為結構化資料庫 redis預設有16個資料庫 檢視配置檔案,可以看到data...