1. 程式人生 > >redis是單執行緒,為什麼那麼快

redis是單執行緒,為什麼那麼快

  1. 完全基於記憶體,絕大部分請求是純粹的記憶體操作,非常快速。
  2. 資料結構簡單,對資料操作也簡單,Redis 中的資料結構是專門進行設計的。
  3. 採用單執行緒,避免了不必要的上下文切換和競爭條件,也不存在多程序或者多執行緒導致的切換而消耗 CPU,不用去考慮各種鎖的問題,不存在加鎖釋放鎖操作,沒有因為可能出現死鎖而導致的效能消耗。
  4. 使用多路 I/O 複用模型,非阻塞 IO。
  5. 使用底層模型不同,它們之間底層實現方式以及與客戶端之間通訊的應用協議不一樣,Redis 直接自己構建了 VM 機制 ,因為一般的系統呼叫系統函式的話,會浪費一定的時間去移