青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Windows下兩種iocp實現的差距

 

 

之前幾天說過,因為經典iocp實現(以下簡稱經典實現)多個io線程綁定在一個iocp上,這樣內部管理了iocp隊列的處理,內部決定是不是需要線程切換,我上次修改的一個版本(以下簡稱實現2),用了多個io線程,每個iocp隊列僅綁定一個io線程,一組用戶共享一個io線程,這和經典的多線程epoll模型的做法是很相似的,這樣每個io線程是可以獨立控制了,但理論上這種做法沒有發揮iocp自動管理線程切換的優勢,昨晚沒事用這兩種實現分別做了個echoserver測試了一下,這兩套實現代碼僅40行左右不同,其他完全一樣,效果真的是差很多,測試僅用一個進程模擬了4000個客戶端,每秒1個包,先看實現2的,cpu14%2io線程,1accept線程,1個主線程,其他線程都沒干活閑置。

 

Cpu

Memory

Threads

handles

14

40088k

8

4236

 

再看經典實現,cpu幾乎一直是0%2io線程,accept也是在io線程里面處理,其他跟實現2一樣,測試客戶端也一樣。

Cpu

Memory

Threads

handles

0

39244k

7

4336

 

說實話,在測試之前我也沒想到有這么大的差距,經典實現就是1.2w個連接連上來還是這樣,就是內存占用多一點:

Cpu

Memory

Threads

handles

0

112068k

7

12280

 

習慣上總有人喜歡拿epolliocp來對比,我到現在也沒看到真正公平的對比,就算是相對公平的也沒見到,因為在我看來,要對比硬件應該是一樣的,os都應該是最新的,最重要的是,server端程序應該都是發揮了各自優勢的,如果拿我這里的實現2去代表iocp的水平和epoll對比,勢必造成比epoll差很多的結果,然而這顯然是不正確的。

 

epoll經典多線程模式實際實現和實現2很相似,理論上也有類似的線程切換問題,不知道效率怎樣。

 

 

Posted on 2011-02-01 10:48 袁斌 閱讀(11998) 評論(3)  編輯 收藏 引用 所屬分類: c++網絡

Feedback

# re: Windows下兩種iocp實現的差距[未登錄]  回復  更多評論   

2011-02-02 10:28 by by
iocp的優勢就是系統調度的工作線程,他會盡量進行無切換的線程調度。我之前做過試驗,壓力小時,工作線程幾乎只用到了第一個。你用固定的io線程正是摒棄的iocp的這個優勢。
epoll的優勢是高效的poll,但是他並不涉及線程,所有的線程處理都是靠線程系統本身來調度,並不會去針對epoll優化。並且epoll管理的只是狀態,並不會關心io操作本身,這也加重了編碼的負擔,以epoll為基礎的各種網絡框架參差不齊。
以前我用的時候,是以單線程epoll,多線程處理狀態的方式建立了框架。io操作都分布到多個線程。所有的狀態都放進一個隊列中,等待io線程去取用。

# re: Windows下兩種iocp實現的差距  回復  更多評論   

2011-02-02 11:43 by 袁斌
@by
iocp編程理論上比epoll困難,因為:
1、winsock系列函數眾多,常用的也有幾十個函數,而且參數眾多,而*nix只有區區幾個函數。
2、epoll函數通知之后是非阻塞同步調用,而iocp是異步調用,更難理解,編程也更復雜。
3、iocp模式的框架幾乎沒有單線程模式的,而epoll的框架很多都是單線程的,這和iocp的多線程框架相比難度降低了很多。當然這個不絕對,要視不同實現而定。
iocp異步多線程模式的確是加大了資源管理的難度,我看過很多網絡框架的實現,幾乎都在這上面花了很多精力,但處理得好的極少,即使是無錯的都不多。所以也沒見過幾個寫得好的框架,同樣采用iocp的不同實現,效率相差可能超過百倍,這可能比epoll的不同框架差距更大。
最近的frame2中IO線程分組調度是為了給每個io線程綁定特殊tls數據,并使得這些線程可直接接收指定消息更新tls數據,標準框架還是經典模式的,使用好多年了,高效穩定可靠。

# re: Windows下兩種iocp實現的差距  回復  更多評論   

2011-02-04 11:52 by 楊粼波
by說的在理.


iocp可以看看這篇文章,挺好的.
http://wenku.baidu.com/view/a1f11287bceb19e8b8f6ba2d.html
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            日韩视频免费看| 国产日韩欧美一区| 亚洲欧美日韩在线| 亚洲欧洲日本一区二区三区| 中文av一区二区| 亚洲精品美女| 亚洲在线免费观看| 久久成人免费视频| 久久一区二区三区av| 欧美日韩国产123区| 久热精品在线视频| 欧美日韩天堂| 国产精品久久久久久久浪潮网站| 国产日韩精品在线| 在线看片成人| 欧美在线一级视频| 亚洲国产mv| 久久av老司机精品网站导航| 欧美午夜一区二区三区免费大片| 久久久91精品国产一区二区精品| 久久这里有精品视频| 最近看过的日韩成人| 欧美专区在线观看一区| 欧美日韩免费观看一区三区 | 久久久久久久久久久成人| 亚洲国产美女精品久久久久∴| 亚洲在线成人精品| 国产精品视频导航| 亚洲一区二区三区免费视频| 亚洲国产日韩精品| 欧美喷潮久久久xxxxx| 91久久国产综合久久| 久久综合九九| 久久蜜桃精品| 亚洲韩日在线| 亚洲国产裸拍裸体视频在线观看乱了| 久久精品最新地址| 国产主播一区二区三区| 男人插女人欧美| 欧美精品一区二| 亚洲一级免费视频| 西西人体一区二区| 欧美日韩国产成人在线观看| 免费美女久久99| 久久婷婷激情| 亚洲欧洲日本专区| 国产精品免费网站| 久久午夜精品一区二区| 欧美夫妇交换俱乐部在线观看| 亚洲免费电影在线| 午夜精品久久久久久久久久久 | 久久久久国产精品一区三寸| 麻豆亚洲精品| 久久久噜噜噜久久人人看| 欧美大尺度在线观看| 欧美一区二视频在线免费观看| 久久久久久久国产| 亚洲综合电影| 欧美精品久久久久久久免费观看| 午夜精品福利电影| 欧美一区二区三区久久精品| 久久久久久9| 亚洲欧美一区二区在线观看| 老牛嫩草一区二区三区日本| 欧美一区二区免费视频| 欧美日韩亚洲一区二区三区在线观看| 欧美波霸影院| 亚洲激情偷拍| 你懂的国产精品永久在线| 毛片一区二区| 极品少妇一区二区| 欧美一区2区视频在线观看 | 国产欧美一区二区精品忘忧草 | 一本久道久久久| 日韩一级大片| 欧美另类综合| 亚洲一区二区三区在线看| 亚洲一区不卡| 国产在线精品二区| 久久中文久久字幕| 亚洲国产美女| 亚洲欧美影院| 在线精品国产成人综合| 欧美成人在线免费观看| 一本色道久久| 久久久精品性| 一本一本大道香蕉久在线精品| 欧美午夜片欧美片在线观看| 亚洲一区二区三区精品在线| 欧美在线一二三四区| 亚洲美女视频| 亚洲第一狼人社区| 国产精品影片在线观看| 麻豆精品网站| 欧美在线视频一区二区三区| 最新热久久免费视频| 久久综合色播五月| 欧美一区二区精品在线| 亚洲人成网站精品片在线观看| 国产精品嫩草影院av蜜臀| 久久精品中文字幕一区| 亚洲欧美另类久久久精品2019| 亚洲七七久久综合桃花剧情介绍| 欧美 日韩 国产精品免费观看| 亚洲午夜国产成人av电影男同| 亚洲免费观看在线视频| 亚洲第一色中文字幕| 精品91视频| 国产自产v一区二区三区c| 国产精品乱码| 国内精品久久久久伊人av| 午夜国产精品视频免费体验区| 国产主播一区二区三区四区| 国产精品任我爽爆在线播放 | 亚洲国产一区视频| 亚洲欧洲一区| 亚洲一区二区三区精品视频| 99精品久久久| 久久精品日韩| 美女黄网久久| 欧美午夜精品理论片a级大开眼界| 欧美岛国激情| 国产精一区二区三区| 狠狠网亚洲精品| 日韩视频一区二区三区在线播放| 国产精品99久久久久久久久| 久久久国产一区二区| 欧美 日韩 国产一区二区在线视频 | 国产精品乱看| 亚洲九九九在线观看| 欧美亚洲在线观看| 欧美va亚洲va日韩∨a综合色| 亚洲精品一区二区三区在线观看 | 欧美一区二区三区免费在线看| 久久国产88| 国产午夜久久久久| 9久草视频在线视频精品| 久久久久久久精| 亚洲免费网站| 亚洲欧美一区二区三区极速播放 | 欧美在线观看天堂一区二区三区| 久久一二三国产| 亚洲欧美日韩第一区| 欧美成年人网| 亚洲国产高清视频| 欧美暴力喷水在线| 欧美—级高清免费播放| 最新国产精品拍自在线播放| 久久久免费av| 久久久美女艺术照精彩视频福利播放| 国产精品一区二区在线观看不卡| 亚洲一区欧美二区| 亚洲一区二区三区成人在线视频精品| 欧美精品一区二区蜜臀亚洲| 亚洲精品美女在线| 亚洲精品久久久久中文字幕欢迎你| 免费在线观看日韩欧美| 一区二区三区视频在线播放| 国产精品一区二区三区成人| 久久久久99| 欧美国产乱视频| 亚洲欧美综合另类中字| 久久免费国产| 国产精品99久久99久久久二8| 亚洲一区二区高清视频| 国产亚洲欧美日韩日本| 91久久久久久| 国产精品外国| 亚洲精品自在在线观看| 国产亚洲一二三区| 亚洲欧洲在线免费| 好吊一区二区三区| 亚洲午夜久久久| 国产精品99久久久久久白浆小说 | 欧美三区免费完整视频在线观看| 亚洲欧美区自拍先锋| 蜜桃久久精品乱码一区二区| 欧美一区亚洲| 国产视频一区在线| 亚洲无亚洲人成网站77777| 亚洲大胆在线| 国产一区二区精品久久| 欧美电影免费观看网站| 国产日韩欧美精品一区| 日韩亚洲精品视频| 中文日韩在线| 国产精品久久久久久久久久ktv | 亚洲欧美一级二级三级| 欧美电影资源| 亚洲精品欧美| 亚洲欧美日韩一区二区三区在线观看 | 亚洲自拍三区| 欧美一区二区视频97| 国产精品一区二区三区成人| 亚洲视频精品| 久久精品国产69国产精品亚洲| 国产一区二区主播在线| 欧美一区二区在线| 亚洲国产三级网| 亚洲香蕉网站|