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