Redis為什麼是單執行緒還這麼快

2021-10-04 09:33:05 字數 376 閱讀 5603

1、redis是基於記憶體的操作,cpu不是redis的瓶頸,redis的瓶頸最有可能是機器記憶體的大小或者網路頻寬;

2、採用單執行緒,避免了不必要的上下文切換和競爭條件,也不存在多程序或者多執行緒導致的切換而消耗 cpu;

3、採用網路io多路復用技術來保證在多連線的時候, 系統的高吞吐量。多路-指的是多個socket連線,復用-指的是復用乙個執行緒。

1、支援資料型別:memcahced支援型別相對單一,而redis支援多種資料型別string、set、sorted set、list、hash;

2、可靠性:redis支援aof、rdb落盤持久化,而memcached不支援;

3、value值限制:memcached支援最大1mb,而redis最大支援512mb;

Redis為什麼是單執行緒的還這麼快

1 完全基於記憶體,絕大部分請求是純粹的記憶體操作,非常快速。資料存在記憶體中,類似於hashmap,hashmap的優勢就是查詢和操作的時間複雜度都是o 1 2 資料結構簡單,對資料操作也簡單,redis中的資料結構是專門進行設計的 3 採用單執行緒,避免了不必要的上下文切換和競爭條件,也不存在多...

redis 是單執行緒的為什麼還這麼快

1 完全基於記憶體,絕大部分請求是純粹的記憶體操作,非常快速。2 資料結構簡單,對資料操作也簡單,redis 中的資料結構是專門進行設計的。3 採用單執行緒,避免了不必要的上下文切換和競爭條件,也不存在多程序或者多執行緒導致的切換而消耗 cpu,不用去考慮各種鎖的問題,不存在加鎖釋放鎖操作,沒有因為...

Redis是單執行緒,為什麼這麼快?

為什麼這麼快,簡單說法 1.redis是基於記憶體的,記憶體的讀寫速度非常快 2.redis是單執行緒的,省去了很多上下文切換執行緒的時間 3.redis使用多路復用技術,可以處理併發的連線 較詳細的解釋 1 完全基於記憶體,絕大部分請求是純粹的記憶體操作,非常快速。資料存在記憶體中,類似於hash...