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

Windows下兩種iocp實現(xiàn)的差距

 

 

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

 

Cpu

Memory

Threads

handles

14

40088k

8

4236

 

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

Cpu

Memory

Threads

handles

0

39244k

7

4336

 

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

Cpu

Memory

Threads

handles

0

112068k

7

12280

 

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

 

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

 

 

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

Feedback

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

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

# re: Windows下兩種iocp實現(xiàn)的差距  回復  更多評論   

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

# re: Windows下兩種iocp實現(xiàn)的差距  回復  更多評論   

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>
            国产欧美一区二区三区另类精品 | 欧美精品亚洲精品| 国产日韩在线播放| 在线综合亚洲| 99在线精品视频| 欧美三级电影精品| 日韩亚洲欧美中文三级| 欧美激情视频一区二区三区免费| 羞羞答答国产精品www一本| 国产精品美腿一区在线看| 亚洲免费视频中文字幕| 亚洲小说欧美另类婷婷| 国产精品―色哟哟| 欧美一区二区三区精品| 欧美亚洲视频在线看网址| 国内偷自视频区视频综合| 亚洲免费在线观看视频| 中文国产一区| 国产欧美日韩精品专区| 久久久久国产精品厨房| 久久久91精品国产一区二区精品| 红桃视频国产一区| 欧美77777| 欧美三级乱人伦电影| 午夜日韩电影| 老司机精品久久| 亚洲视频免费观看| 久久国产精品久久w女人spa| 亚洲激情第一区| 亚洲美女区一区| 好男人免费精品视频| 91久久黄色| 国产视频亚洲精品| 亚洲国产精品99久久久久久久久| 欧美日韩国产色综合一二三四 | 欧美人与性动交α欧美精品济南到| 亚洲一级黄色| 欧美一区国产在线| 亚洲激情在线观看| 久久精品123| 久久久久99| 欧美三区在线| 亚洲精品国产精品乱码不99按摩| 国产日韩欧美视频| 一区二区三区精品视频| 亚洲国产精品va在看黑人| 久久av一区二区三区漫画| 午夜精品视频在线观看| 欧美xxx在线观看| 久久综合给合| 国产精品麻豆成人av电影艾秋| 亚洲免费高清视频| 一区二区三区 在线观看视频| 麻豆精品一区二区综合av| 国产精品国产一区二区| 亚洲二区在线观看| 欧美成年网站| 亚洲视频一二| 欧美激情亚洲精品| 亚洲久久视频| 国产精品久久久久久模特 | 久久久久www| 亚洲你懂的在线视频| 亚洲激情二区| 永久免费毛片在线播放不卡| 国产日产欧产精品推荐色| 欧美日韩在线看| 欧美经典一区二区三区| 久久中文精品| 久久在线免费视频| 久久频这里精品99香蕉| 久久9热精品视频| 欧美亚洲一区三区| 午夜在线电影亚洲一区| 亚洲天堂免费在线观看视频| 亚洲激情一区| 亚洲精品在线视频观看| 欧美激情第一页xxx| 亚洲一级在线观看| 亚洲精品1区2区| 在线成人欧美| 激情久久久久久久久久久久久久久久| 欧美日韩亚洲综合在线| 美日韩精品视频免费看| 久久久久久久久综合| 午夜亚洲性色福利视频| 亚洲欧美网站| 快she精品国产999| 久久一区中文字幕| 欧美中文在线免费| 午夜精品久久久久久久蜜桃app| 在线观看亚洲精品视频| 国产专区欧美专区| 国产一区二区三区无遮挡| 国产伦精品一区二区| 国产精品久久激情| 国产嫩草一区二区三区在线观看 | 亚洲欧美日韩天堂一区二区| 中国成人黄色视屏| 午夜精品久久久久久久久久久久久| 亚洲三级免费电影| 亚洲一区二区三区免费视频| 亚洲香蕉网站| 欧美一级专区| 久久尤物视频| 欧美成人免费全部| 亚洲激情第一区| 亚洲欧美日本国产专区一区| 在线成人免费观看| 亚洲乱码国产乱码精品精可以看 | 亚洲欧洲在线免费| 亚洲一二区在线| 欧美精品1区2区3区| 激情综合在线| 国产欧美精品一区二区色综合| 国产亚洲精品美女| 一区二区三区精品视频| 亚洲一级特黄| 亚洲精品在线一区二区| 老司机一区二区三区| 国产午夜精品久久久久久免费视 | 欧美日韩午夜视频在线观看| 激情五月***国产精品| 欧美在线免费视频| 亚洲视频在线观看网站| 欧美麻豆久久久久久中文| 亚洲国产一区在线观看| 久久综合九色九九| 久久成人精品视频| 狠狠干综合网| 蘑菇福利视频一区播放| 久久日韩精品| 亚洲人成久久| 最新中文字幕亚洲| 欧美日韩成人一区二区三区| 夜夜精品视频| 亚洲免费视频在线观看| 国产欧美日韩不卡免费| 久久午夜激情| 欧美高清视频| 午夜精品国产更新| 欧美一区三区二区在线观看| 精品999成人| 亚洲国产免费| 国产精品一区二区三区四区| 国产主播一区二区三区| 国产精品色网| 亚洲综合日韩| 亚洲欧美在线一区| 午夜精品剧场| 亚洲视频在线二区| 久久精品国产99国产精品| 欧美成人自拍视频| 亚洲一区二区三区三| 久久久精品日韩欧美| 国产精品美女xx| 亚洲日韩欧美视频| 欧美v日韩v国产v| 午夜精品久久久久影视 | 午夜影院日韩| 欧美电影免费观看高清完整版| 国产精品99久久久久久有的能看 | 午夜久久黄色| 欧美私人网站| 亚洲婷婷综合久久一本伊一区| 欧美~级网站不卡| 久久精品视频免费播放| 国内精品模特av私拍在线观看| 久久精品在线免费观看| 日韩一级精品视频在线观看| 国产精品丝袜白浆摸在线| 亚洲理论在线| 久久久久国内| 亚洲精选在线观看| 亚洲观看高清完整版在线观看| 亚洲在线中文字幕| 另类天堂av| 狠狠色狠狠色综合日日小说| 久久本道综合色狠狠五月| 亚洲一区二区欧美日韩| 在线看片日韩| 欧美国产成人在线| 亚洲每日更新| 欧美在线|欧美| 亚洲免费影视第一页| 亚洲黄色三级| 午夜精品久久久久久久久| 亚洲精品免费一区二区三区| 亚洲精品久久久久久久久久久久久 | 香蕉久久夜色精品| 亚洲精品色图| 欧美freesex交免费视频| 欧美激情一区二区三区在线视频 | 国产亚洲欧美日韩精品| 欧美成人乱码一区二区三区| 女同性一区二区三区人了人一 | 免费欧美日韩国产三级电影| 99国内精品久久| 欧美亚洲一区三区| 一区二区三区日韩|