redis完全基于內(nèi)存,絕大部分請求是純粹的內(nèi)存操作,非常快速.
數(shù)據(jù)結(jié)構(gòu)簡單,對數(shù)據(jù)操作也簡單,redis中的數(shù)據(jù)結(jié)構(gòu)是專門進行設計的
采用單線程模型, 避免了不必要的上下文切換和競爭條件, 也不存在多線程或者多線程切換而消耗CPU, 不用考慮各種鎖的問題, 不存在加鎖, 釋放鎖的操作, 沒有因為可能出現(xiàn)死鎖而導致性能消耗
使用了多路IO復用模型,非阻塞IO
使用底層模型不同,它們之間底層實現(xiàn)方式及與客戶端之間的 通信的應用協(xié)議不一樣,Redis直接構(gòu)建了自己的VM機制,因為一般的系統(tǒng)調(diào)用系統(tǒng)函數(shù)的話,會浪費一定的時間去移動和請求