為什么 Redis 中要使用 I/O 多路復(fù)用這種技術(shù)呢铸屉?
首先,Redis 是跑在單線(xiàn)程中的切端,所有的操作都是按照順序線(xiàn)性執(zhí)行的彻坛,但是由于讀寫(xiě)操作等待用戶(hù)輸入或輸出都是阻塞的,所以 I/O 操作在一般情況下往往不能直接返回踏枣,這會(huì)導(dǎo)致某一文件的 I/O 阻塞導(dǎo)致整個(gè)進(jìn)程無(wú)法對(duì)其它客戶(hù)提供服務(wù)昌屉,而 I/O 多路復(fù)用就是為了解決這個(gè)問(wèn)題而出現(xiàn)的。