

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、強(qiáng)大的強(qiáng)大的TcpServer壓力測(cè)試工具源碼(附突破連接限制的方法和工具)壓力測(cè)試工具源碼(附突破連接限制的方法和工具)關(guān)鍵詞:IOCPTcpServerTcpClient完成端口服務(wù)器達(dá)到6萬(wàn)連接突破連接限制壓力測(cè)試工具堵塞鎖非堵塞鎖無(wú)鎖LockFree并發(fā)隊(duì)列并發(fā)可擴(kuò)充環(huán)形隊(duì)列首先感謝在行動(dòng)和精神上給予本人支持的各位同行,在過(guò)去的日子,使得本人的IOCP研究進(jìn)入了嶄新的領(lǐng)域。本文及附件希望能給予更多人的幫助,限于商用等原因,除了原
2、來(lái)的0.85版開(kāi)源之外,更高版本不便開(kāi)源,僅簡(jiǎn)單描述一些技術(shù)要點(diǎn),請(qǐng)諒解。但附件的壓力工具源碼,仍然能給予很多幫助,比如封包、解包、處理粘包等,同是壓力工具還能幫助開(kāi)發(fā)者測(cè)試服務(wù)器的性能,而且此幫助并不僅僅是一般的幫助。(其他的IOCP方法網(wǎng)上都有介紹,這里不多說(shuō)。)一、TcpServer1、結(jié)構(gòu)及流程A、看守線程負(fù)責(zé)響應(yīng)接受投遞不足時(shí)的事件并投遞接受請(qǐng)求,同是處理空連接和心跳超時(shí)B、工作線程負(fù)責(zé)處理讀寫完成及讀寫錯(cuò)誤的處理,并投遞給處
3、理線程C、由于在工作處理數(shù)據(jù)及進(jìn)行文件和數(shù)據(jù)庫(kù)讀寫等操作可能會(huì)造成通信“卡”的現(xiàn)象,因此增加了處理線程,通過(guò)完成隊(duì)列和線程池,接受工作線程投遞過(guò)來(lái)的事件,處理線程通過(guò)回調(diào)函數(shù)將IO操作結(jié)果傳遞給應(yīng)用層,應(yīng)用層完全可以在回調(diào)函數(shù)里處理數(shù)據(jù),從而實(shí)現(xiàn)了0拷貝功能,并保證數(shù)據(jù)的有序處理。2、運(yùn)行信息為能更好的測(cè)試模塊,開(kāi)發(fā)者可參考截圖的信息內(nèi)容,對(duì)自己的模塊進(jìn)行測(cè)試開(kāi)發(fā)工作,以幫助觀察運(yùn)行情況判斷問(wèn)題所在。6、變量復(fù)位三、后IOCP時(shí)代個(gè)人認(rèn)
4、為,微軟的IOCP模型并不是Windowssocket的終極,IOCP部分功能和效率仍然有待改進(jìn),以及Windowssocket接口仍然不是高效率的體現(xiàn),對(duì)開(kāi)發(fā)有高要求的人,尤其是研究過(guò)Win2000源碼的人,更深有體會(huì)。大家都知道,凡是滿足功能強(qiáng)大的軟件,效率在一定程度上會(huì)打折扣,針對(duì)高效率模型提供專有的SocketAPI才是關(guān)鍵,而不是一個(gè)API通用任何模型。微軟到底是改進(jìn)現(xiàn)有功能呢,還是提供更有效率的模型,這個(gè)只有微軟才知道了。四
5、、IOCP的更高境界入題前先給線程同步的鎖分類:1、堵塞鎖:系統(tǒng)提供的內(nèi)核態(tài)的同步機(jī)制(內(nèi)核態(tài)切換的效率眾所周知),2.、非堵塞鎖:諸如LockFree等使用原子操作指令完成的同步機(jī)制,3、無(wú)鎖:堵塞鎖、非堵塞鎖之外的同步機(jī)制,確實(shí)的說(shuō)是沒(méi)有鎖的機(jī)制。網(wǎng)絡(luò)及書本上介紹的IOCP,常用做法都是使用堵塞鎖的方式,打破傳統(tǒng)思維才能獲得創(chuàng)新。在過(guò)去的日子中,本人已經(jīng)實(shí)現(xiàn)了非堵塞鎖并發(fā)同步的IOCP模塊。并根據(jù)IOCPTcpServer的特殊情況
6、,能在多線程下某些競(jìng)爭(zhēng)的地方不使用鎖亦能實(shí)現(xiàn)并發(fā)式同步的功能。這個(gè)模塊實(shí)現(xiàn),需要對(duì)IOCPTcpServer的數(shù)據(jù)結(jié)構(gòu)(主要是隊(duì)列)進(jìn)行深入分析,根據(jù)實(shí)時(shí)性、使用頻率等歸納總結(jié),判斷出:哪些需要立即處理的,哪些可以暫緩處理而又不影響效率的,哪些需要鎖的,哪些不需要鎖的,哪些需要堵塞鎖的,哪些不需要堵塞鎖的,需要堵塞鎖的能不能換個(gè)角度可以使用非堵塞鎖來(lái)解決等。五、附件1、突破連接限制的注冊(cè)表設(shè)置方法及工具比較全面的介紹突破連接限制。2、功
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 滲透測(cè)試工具基礎(chǔ)方法篇
- 軟件壓力測(cè)試及測(cè)試工具的研究與實(shí)現(xiàn).pdf
- 基于UML的面向?qū)ο筌浖y(cè)試方法和測(cè)試工具研究.pdf
- 其它常用調(diào)試工具和方法
- 《如何使用面試工具和方法?》
- 《如何使用面試工具和方法?》
- 功能測(cè)試工具qtp的使用
- WiMAX系統(tǒng)話務(wù)負(fù)載壓力測(cè)試工具的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 測(cè)試工具備用查詢
- IOS平臺(tái)卡牌游戲壓力測(cè)試工具的研究與實(shí)現(xiàn).pdf
- 高管人才面試、測(cè)試工具
- 淺析hst測(cè)試工具及工藝
- performancerunner自動(dòng)化測(cè)試工具
- ddos攻擊測(cè)試工具大合集
- 二單元測(cè)試工具junit的使用
- 常用軟件測(cè)試工具匯總
- 高效使用自動(dòng)測(cè)試工具
- 面試工具
- 面向Web軟件的分布式壓力測(cè)試工具的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 自動(dòng)化測(cè)試工具的研究——一種CDMA2000系統(tǒng)自動(dòng)化測(cè)試工具.pdf
評(píng)論
0/150
提交評(píng)論