用戶態(tài)協(xié)議棧,為什么要實現(xiàn)epoll?因為內(nèi)核的epoll是跟內(nèi)核協(xié)議棧一起使用的,內(nèi)核協(xié)議棧處理io后通過回調(diào)的方式來操作epoll中的就緒隊...
要實現(xiàn)用戶態(tài)協(xié)議棧,必須要搞懂TCP,TCP 11個狀態(tài)、滑動窗口、擁塞控制等等。要使用用戶態(tài)協(xié)議棧,內(nèi)核提供的epoll就不起作用了,我們需要...
協(xié)議棧,指的是TCP/IP協(xié)議棧。linux系統(tǒng)中,協(xié)議棧是內(nèi)核實現(xiàn)的。 Client發(fā)送數(shù)據(jù)給server,數(shù)據(jù)首先到達(dá)網(wǎng)卡,經(jīng)過兩步到達(dá)應(yīng)用...
scanredis對于命令的處理,即網(wǎng)絡(luò)io, 是單線程的,如果有上百萬個key,使用keys這樣的命令,會進(jìn)行遍歷,時間復(fù)雜度是O(N), r...
reactor模式是對epoll的一層封裝,將網(wǎng)絡(luò)io轉(zhuǎn)換成event。redis/nginx/libevent對網(wǎng)絡(luò)io的處理,都采用了rea...
什么是io多路復(fù)用?為什么要有io多路復(fù)用?原始的server,處理多個連接的方法,有兩種:1)一個while循環(huán),不斷去輪詢,檢測每一個soc...
1.多線程數(shù)據(jù)共享,資源保護方法:1)mutex如果獲取不到鎖,讓出CPU,將線程加入等待隊列。 2)spinlock如果獲取不到鎖,則繼續(xù)死循...
1. 上傳、解壓zookeeper安裝文件 tar -zxvf zookeeper-3.4.10.tar.gz 2. 創(chuàng)建軟連接 ln -s /...