文章目錄
- Redis 執行緒模型(Redis 是單執行緒)
- 1. 阻塞與非阻塞
- 阻塞: (一對一)
- 非阻塞: (多對一, 即多路復用模式, 同步非阻塞模式)
- 2. 多路復用器
- 3. Redis 的執行緒模型
- PS: 使用單執行緒的原因
Redis 執行緒模型(Redis 是單執行緒)
1. 阻塞與非阻塞
阻塞: (一對一)
當一個用戶訪問我們的服務器, 只有當這個用戶被服務器處理完后, 下一個用戶才能進行訪問我們的服務器, 若服務器沒有處理完第一個用戶的請求, 那么第二個, 第三個請求就會被阻塞, 只有服務器處理完成后才能讓后續用戶進行訪問.
在高并發情況下, 這種效率極其低下.
非阻塞: (多對一, 即多路復用模式, 同步非阻塞模式)
多個用戶可以進行請求訪問我們的服務器, 服務器會按某種演算法進行依次給予回應.
在高并發情況下, 這種效率較好, 性能好.
2. 多路復用器
就是只進行接收用戶的請求, 而不做具體的操作實作, 接受請求后交給后續的控制器進行處理.
多路復用器就是使用的同步非阻塞的多對一模式, 因此它的的性能效率很高.
3. Redis 的執行緒模型

PS: 使用單執行緒的原因
多執行緒情況下, 有可能會設計背景關系內容的切換, 背景關系切換就有可能出現一些問題, 這樣的話, 使用單執行緒就會避免出現問題和一些資源的損耗, 同樣在使用單執行緒模式的時候, 它的并發性, 效率是非常高的.
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/277007.html
標籤:其他
上一篇:grpc的封裝
