首頁技術(shù)文章正文

I/O多路復(fù)用模型怎么理解?

更新時間:2023-05-15 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

I/O多路復(fù)用是指利用單個線程來同時監(jiān)聽多個Socket ,并在某個Socket可讀、可寫時得到通知,從而避免無效的等待,充分利用CPU資源。目前的I/O多路復(fù)用都是采用的epoll模式實(shí)現(xiàn),它會在通知用戶進(jìn)程Socket就緒的同時,把已就緒的Socket寫入用戶空間,不需要挨個遍歷Socket來判斷是否就緒,提升了性能。

其中Redis的網(wǎng)絡(luò)模型就是使用I/O多路復(fù)用結(jié)合事件的處理器來應(yīng)對多個Socket請求,比如,提供了連接應(yīng)答處理器、命令回復(fù)處理器,命令請求處理器;

在Redis6.0之后,為了提升更好的性能,在命令回復(fù)處理器使用了多線程來處理回復(fù)事件,在命令請求處理器中,將命令的轉(zhuǎn)換使用了多線程,增加命令轉(zhuǎn)換速度,在命令執(zhí)行的時候,依然是單線程。

分享到:

Java培訓(xùn)班課程javaee

Python培訓(xùn)機(jī)構(gòu)python大數(shù)據(jù)

web前端培訓(xùn)課程升級V8.5web

AI+設(shè)計培訓(xùn)課程ui

大數(shù)據(jù)培訓(xùn)課程cloud

軟件測試培訓(xùn)課程test

c

新媒體運(yùn)營培訓(xùn)netmarket

產(chǎn)品經(jīng)理培訓(xùn)課程pm

linux培訓(xùn)Linux

movies

智能機(jī)器人培訓(xùn)robot

電商視覺設(shè)計課程uids

AI

集成電路應(yīng)用開發(fā)(嵌入式)培訓(xùn)課程jdbc

在線咨詢 我要報名
和我們在線交談!