redis基礎概念小結

2021-10-12 01:35:25 字數 538 閱讀 8842

一、redis真的是單執行緒嗎?

redis在網路io和資料讀寫方面使用的是乙個執行緒,持久化,資料集群同步等由其他執行緒而不是主線程完成,所以嚴格來說,redis不是單執行緒。

二、為什麼使用單執行緒?

多執行緒會有共享資源併發訪問控制問題,使用單執行緒,redis可以避免這些問題。而且使用單執行緒,redis內部實現的複雜度大大降低。

三、為啥單執行緒就挺快?

1.redis基於記憶體去操作的,且採用高效的資料結果,比如雜湊表跳表等。

2.redis採用的是多路復用機制,導致網路io可以併發處理大量的客戶端請求,提高吞吐量。

四、redis6為啥又要引入多執行緒?

redis的效能拼接,不在於cpu,而在於網路和記憶體。記憶體可以通過新增記憶體或者調整資料結構等優化。

但是redis的網路io讀寫,占用了大量的cpu時間,採用多執行緒處理網路io讀寫,效能會大大提高

五、redis基本架構模型

Redis 一 基礎概念和儲存型別

redis 基礎 1.為什麼用redis?1.1 隨著 的訪問增多,資料庫的壓力增大,為了儘量減少對資料庫的直接訪問,我們可以用redis快取部分經常需要查詢的資料 1.2 集群時使用者session資料不同步,可以將使用者資料存放到redis中,保持同步 1.3 集群時多台伺服器之間的鎖不存在互斥...

redis實踐小結

redis 安裝高階一 wget tar xzf redis 5.0.5.tar.gz cd redis 5.0.5 make啟動服務端 使用預設引數 src redis server使用內建的客戶端 src redis cli redis set foo bar okredis get foo b...

Redis概念高階

redis本質上是乙個key value型別的記憶體資料庫,整個資料庫載入在記憶體中進行操作,定期通過非同步操作把資料庫資料flush到硬碟上進行儲存。因為是純記憶體操作,redis的效能非常出色,每秒可以處理超過10萬次讀寫操作,是已知效能最快的key value db。redis支援多種資料結構...