国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

黑馬博學(xué)谷Redis6 從入門使用到新特性掌握,一課講透

2023-03-09 22:31 作者:提莫和富江  | 我要投稿

1. Redis6.0之前的版本真的是單線程嗎?

Redis在處理客戶端的請求時(shí),包括獲取 (socket 讀)、解析、執(zhí)行、內(nèi)容返回 (socket 寫) 等都由一個(gè)順序串行的主線程處理,這就是所謂的“單線程”。但如果嚴(yán)格來講從Redis4.0之后并不是單線程,除了主線程外,它也有后臺線程在處理一些較為緩慢的操作,例如清理臟數(shù)據(jù)、無用連接的釋放、大 key 的刪除等等。

2. Redis6.0之前為什么一直不使用多線程?

官方曾做過類似問題的回復(fù):使用Redis時(shí),幾乎不存在CPU成為瓶頸的情況, Redis主要受限于內(nèi)存和網(wǎng)絡(luò)。例如在一個(gè)普通的Linux系統(tǒng)上,Redis通過使用pipelining每秒可以處理100萬個(gè)請求,所以如果應(yīng)用程序主要使用O(N)或O(log(N))的命令,它幾乎不會占用太多CPU。

使用了單線程后,可維護(hù)性高。多線程模型雖然在某些方面表現(xiàn)優(yōu)異,但是它卻引入了程序執(zhí)行順序的不確定性,帶來了并發(fā)讀寫的一系列問題,增加了系統(tǒng)復(fù)雜度、同時(shí)可能存在線程切換、甚至加鎖解鎖、死鎖造成的性能損耗。Redis通過AE事件模型以及IO多路復(fù)用等技術(shù),處理性能非常高,因此沒有必要使用多線程。單線程機(jī)制使得 Redis 內(nèi)部實(shí)現(xiàn)的復(fù)雜度大大降低,Hash 的惰性 Rehash、Lpush 等等 “線程不安全” 的命令都可以無鎖進(jìn)行。

?

黑馬博學(xué)谷Redis6 從入門使用到新特性掌握,一課講透的評論 (共 條)

分享到微博請遵守國家法律
昆山市| 清新县| 永兴县| 英德市| 黄冈市| 沂水县| 莱州市| 天台县| 开鲁县| 桂平市| 宜昌市| 萨迦县| 贵州省| 平武县| 大埔县| 泉州市| 临猗县| 同德县| 富蕴县| 旬阳县| 射洪县| 获嘉县| 锡林郭勒盟| 塔河县| 板桥市| 铜梁县| 宁都县| 鄂温| 仁化县| 呼玛县| 长武县| 五华县| 武威市| 日照市| 巩留县| 老河口市| 涿鹿县| 湖北省| 青河县| 莎车县| 义乌市|