專利名稱:一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種網(wǎng)絡(luò)壓力測(cè)試方法,特別是涉及一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法。
背景技術(shù):
服務(wù)器是計(jì)算機(jī)的一種,它是網(wǎng)絡(luò)上一種為客戶端計(jì)算機(jī)提供各種共享服務(wù)的高性能計(jì)算機(jī)。它在網(wǎng)絡(luò)操作系統(tǒng)的控制下,將與其相連的硬盤、磁盤、打印機(jī)、Modem(調(diào)制解調(diào)器)及專用通訊設(shè)備,提供給網(wǎng)絡(luò)上的客戶站點(diǎn)共享,也能為網(wǎng)絡(luò)用戶提供集中計(jì)算、信息發(fā)表及數(shù)據(jù)管理等服務(wù)。服務(wù)器可說(shuō)是整個(gè)網(wǎng)絡(luò)運(yùn)行的基石,發(fā)揮著舉足輕重的作用,作為網(wǎng)絡(luò)的節(jié)點(diǎn),存儲(chǔ)、處理網(wǎng)絡(luò)上大量的數(shù)據(jù)、信息,因此也被稱為網(wǎng)絡(luò)的靈魂。
然而服務(wù)器在批量生產(chǎn)之前,為了檢驗(yàn)服務(wù)器不同方面的性能及硬件結(jié)構(gòu)設(shè)計(jì)的合理性,需要對(duì)其進(jìn)行全面的測(cè)試。當(dāng)前,市面上提供了許多對(duì)服務(wù)器性能的基準(zhǔn)測(cè)試軟件,不同的基準(zhǔn)測(cè)試,可測(cè)量服務(wù)器不同方面的性能。測(cè)試軟件,他們的工作原理為對(duì)服務(wù)器進(jìn)行大量、頻繁的數(shù)據(jù)訪問(wèn),通過(guò)用較長(zhǎng)的時(shí)間運(yùn)行測(cè)試程序,查看相應(yīng)的測(cè)試報(bào)告,依此得出服務(wù)器的高級(jí)性能,比如支持的客戶端數(shù)量,CPU的運(yùn)算速度,文件訪問(wèn)的時(shí)間等高級(jí)性能,這些指標(biāo)反映的是服務(wù)器的性能,而不能反映影響系統(tǒng)整體性能的具體硬件。
因此,為了使得服務(wù)器的硬件結(jié)構(gòu)設(shè)計(jì)合理,當(dāng)前,以硬件測(cè)試程序在設(shè)計(jì)上將不同硬件分為若干測(cè)試項(xiàng),測(cè)試程序?qū)⑦@些測(cè)試項(xiàng)以一定的規(guī)則調(diào)度并執(zhí)行,即可對(duì)所有硬件進(jìn)行測(cè)試。為了使測(cè)試程序能夠合理地測(cè)試出硬件設(shè)計(jì)的實(shí)際情況,保證服務(wù)器在使用中穩(wěn)定可靠,各測(cè)試項(xiàng)都設(shè)有可調(diào)節(jié)的參數(shù)。調(diào)節(jié)測(cè)試項(xiàng)的參數(shù),可以使相應(yīng)的硬件處于大量、頻繁的數(shù)據(jù)訪問(wèn)之中,這樣整個(gè)服務(wù)器系統(tǒng)便處于極端的硬件使用環(huán)境中,從而達(dá)到對(duì)系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)進(jìn)行壓力測(cè)試的目的。
一般而言,良好且有效的壓力測(cè)試軟件需具有以下的要求第一,必須能真實(shí)地模擬客戶端對(duì)服務(wù)器所產(chǎn)生的一切動(dòng)作。第二,能同時(shí)模擬大量客戶端所產(chǎn)生的壓力。第三,必須很容易地產(chǎn)生測(cè)試腳本(Script),同時(shí)又能對(duì)腳本進(jìn)行編輯。第四,支持Cookies及Session ID(會(huì)話標(biāo)識(shí)符)的攫取并能正確模擬。第五,可以針對(duì)不同的執(zhí)行流程配置不同比重的負(fù)荷。第六,能顯示測(cè)試執(zhí)行成功、失敗、錯(cuò)誤的數(shù)量及比例。第七,可以檢查頁(yè)面中特定的文字或圖片。第八,可以模擬真實(shí)用戶不同的思考、停頓時(shí)間。第九,測(cè)試中必須能輸入大量不同的數(shù)據(jù)。第十,必須能End-to-End(端到端)地記錄整個(gè)被測(cè)試系統(tǒng)架構(gòu)中所有軟硬件資源的效能及響應(yīng)數(shù)據(jù)。第十一,具備分析測(cè)試所得數(shù)據(jù)的功能,并產(chǎn)生各類分析報(bào)表。第十二,能利用測(cè)試所得的數(shù)據(jù)自動(dòng)分析出系統(tǒng)發(fā)生以上的可疑問(wèn)題點(diǎn)。
但是,不論對(duì)服務(wù)器作性能或是硬件結(jié)構(gòu)設(shè)計(jì)的合理性的測(cè)試,在測(cè)試過(guò)程中客戶端/服務(wù)器端的中央處理器(CPU)的占用率很高,也即是中央處理器不斷處理與客戶端建立連接、接收及發(fā)送數(shù)據(jù)包至客戶端,特別是服務(wù)器的中央處理器的占用率都在100%,而導(dǎo)致服務(wù)器無(wú)法運(yùn)行其它的程序或?qū)ζ渌绦虻捻憫?yīng)速度變慢。因此,當(dāng)服務(wù)器的中央處理器因?yàn)榻邮占鞍l(fā)送數(shù)據(jù)包至客戶端時(shí),而導(dǎo)致中央處理器的占用率達(dá)到100%,卻無(wú)法處理大量的數(shù)據(jù)訪問(wèn)。所以,如何減輕中央處理器因?yàn)榻邮占鞍l(fā)送數(shù)據(jù)包至客戶端的占用率,從而達(dá)到真正對(duì)服務(wù)器進(jìn)行壓力測(cè)試的目的,成為研發(fā)人員待解決問(wèn)題之一。
發(fā)明內(nèi)容
鑒于以上的問(wèn)題,本發(fā)明的主要目的在于提供一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法,用于解決先前技術(shù)所存在的問(wèn)題。
為達(dá)上述目的,本發(fā)明提供了一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法,由多數(shù)個(gè)客戶端對(duì)一服務(wù)器進(jìn)行大量數(shù)據(jù)的讀寫動(dòng)作,用于測(cè)試該服務(wù)器對(duì)單一客戶端的響應(yīng),而該服務(wù)器至少包含一緩存單元,該方法包含有下列步驟該服務(wù)器建立一鏈接表;該服務(wù)器以一主線程接收來(lái)自該客戶端的一聯(lián)機(jī)請(qǐng)求;該服務(wù)器建立對(duì)應(yīng)該聯(lián)機(jī)請(qǐng)求的一連接端口,并送出一聯(lián)機(jī)數(shù)據(jù)至該客戶端;該服務(wù)器通過(guò)該連接端口與該客戶端建立一聯(lián)機(jī),并將該聯(lián)機(jī)記錄于該鏈接表;該服務(wù)器建立至少一次線程;該次線程接收來(lái)自該客戶端的一數(shù)據(jù)包;及該次線程回傳該數(shù)據(jù)包至該客戶端。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,還包含有下列步驟該主線程接收來(lái)自該次線程的一結(jié)束信息;及該主線程將該聯(lián)機(jī)至該鏈接表中刪除。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該次線程接收來(lái)自該客戶端的一數(shù)據(jù)包的步驟中,包含有該次線程判斷一數(shù)據(jù)包類型的步驟。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該數(shù)據(jù)包類型包含一讀取請(qǐng)求類型、一寫入請(qǐng)求類型及一結(jié)束請(qǐng)求類型的任一一個(gè)。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該次線程判斷一數(shù)據(jù)包類型的步驟中,當(dāng)該數(shù)據(jù)包類型為該讀取請(qǐng)求時(shí),執(zhí)行下列步驟該次線程將接收的該數(shù)據(jù)包內(nèi)的該數(shù)據(jù)資料存儲(chǔ)在該緩存單元;及該次線程至該緩存單元讀取該數(shù)據(jù)資料。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該次線程判斷一數(shù)據(jù)包類型的步驟中,當(dāng)該數(shù)據(jù)包類型為該寫入請(qǐng)求時(shí),執(zhí)行該次線程將存儲(chǔ)于該緩存單元的該數(shù)據(jù)資料發(fā)送至該客戶端的步驟。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,各該次線程判斷一數(shù)據(jù)包類型的步驟中,當(dāng)該數(shù)據(jù)包類型為該結(jié)束請(qǐng)求時(shí),包含有下列步驟該次線程發(fā)送該結(jié)束信息至該主線程;及該次線程刪除該緩存單元的所有該數(shù)據(jù)資料。
為達(dá)上述目的,本發(fā)明還提供了另一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法,由多數(shù)個(gè)客戶端對(duì)一服務(wù)器進(jìn)行大量數(shù)據(jù)的讀寫動(dòng)作,用于測(cè)試該服務(wù)器對(duì)單一客戶端的響應(yīng),而該服務(wù)器至少包含一緩存單元,該方法包含有下列步驟該客戶端建立一第一時(shí)間值、一第二時(shí)間值及一結(jié)束值;該客戶端發(fā)送一聯(lián)機(jī)請(qǐng)求至該服務(wù)器;該客戶端在該第一時(shí)間值內(nèi),接收來(lái)自該服務(wù)器的一聯(lián)機(jī)數(shù)據(jù),建立聯(lián)機(jī);該客戶端發(fā)送一數(shù)據(jù)包至該服務(wù)器;該客戶端在該第二時(shí)間值內(nèi),接收來(lái)自該服務(wù)器的該數(shù)據(jù)包;
該客戶端對(duì)比該數(shù)據(jù)包與接收的該數(shù)據(jù)包為相符;該客戶端計(jì)數(shù)接收該數(shù)據(jù)包的一次數(shù)值;該客戶端確認(rèn)該結(jié)束值與該次數(shù)值為相符;及該客戶端斷開該服務(wù)器端的聯(lián)機(jī)。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該客戶端在該第一時(shí)間值內(nèi),接收來(lái)自服務(wù)器的一聯(lián)機(jī)數(shù)據(jù),建立聯(lián)機(jī)的步驟,當(dāng)未在該第一時(shí)間值內(nèi)接收該聯(lián)機(jī)數(shù)據(jù)時(shí),包含有該客戶端建立一第一錯(cuò)誤報(bào)告,并再次發(fā)送該聯(lián)機(jī)請(qǐng)求至該服務(wù)器的步驟。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該客戶端在該第二時(shí)間值內(nèi),接收來(lái)自該服務(wù)器的該數(shù)據(jù)包的步驟,當(dāng)未在該第二時(shí)間值內(nèi)接收該數(shù)據(jù)包時(shí),包含有該客戶端建立一第二錯(cuò)誤報(bào)告,并斷開與該服務(wù)器聯(lián)機(jī)的步驟。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該客戶端對(duì)比該數(shù)據(jù)包與接收的該數(shù)據(jù)包為相符的步驟,當(dāng)該數(shù)據(jù)包與接收的該數(shù)據(jù)包為不相符時(shí),包含有該客戶端建立一第三錯(cuò)誤報(bào)告,并斷開與該服務(wù)器聯(lián)機(jī)的步驟。
所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其中,該客戶端確認(rèn)該預(yù)定結(jié)束值與該次數(shù)值為相符的步驟,當(dāng)該預(yù)定結(jié)束值與該次數(shù)值為為不同時(shí),執(zhí)行該客戶端計(jì)數(shù)該響應(yīng)數(shù)據(jù)包的一次數(shù)值的步驟。
本發(fā)明的特點(diǎn)在于服務(wù)器的中央處理器不因?yàn)榻邮占鞍l(fā)送數(shù)據(jù)包的動(dòng)作,而導(dǎo)致中央處理器的占用率達(dá)到100%;因此能達(dá)到真正網(wǎng)絡(luò)壓力測(cè)試的目的,并提供用戶真正服務(wù)器的性能報(bào)告。
以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)描述,但不作為對(duì)本發(fā)明的限定。
圖1為應(yīng)用于本發(fā)明的網(wǎng)絡(luò)壓力測(cè)試系統(tǒng)架構(gòu)圖;圖2為服務(wù)器的主線程運(yùn)作的流程圖;圖3為服務(wù)器的次線程運(yùn)作的流程圖;及圖4為根據(jù)本發(fā)明所提供的另一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法的流程圖。
其中,附圖標(biāo)記1 客戶端
2 客戶端4 緩存單元5 服務(wù)器具體實(shí)施方式
服務(wù)器5的高性能主要展現(xiàn)在高速度的運(yùn)算能力、長(zhǎng)時(shí)間的可靠運(yùn)行、強(qiáng)大的外部數(shù)據(jù)吞吐能力等方面。因此,進(jìn)行服務(wù)器5性能測(cè)試時(shí),如何給服務(wù)器5加壓,而提供用戶真正服務(wù)器5的性能報(bào)告是一件非常重要的事。
請(qǐng)參閱圖1,為應(yīng)用于本發(fā)明的多線程的網(wǎng)絡(luò)壓力測(cè)試系統(tǒng)的架構(gòu)圖,為多個(gè)客戶端1、2對(duì)服務(wù)器5進(jìn)行大量數(shù)據(jù)的讀寫動(dòng)作,也即是客戶端1、2持續(xù)不斷送出聯(lián)機(jī)要求及數(shù)據(jù)包至服務(wù)器5,服務(wù)器5再將收到的數(shù)據(jù)包按照原樣發(fā)送至客戶端1、2。通過(guò)客戶端1、2與服務(wù)器5的數(shù)據(jù)往來(lái),從而反映出服務(wù)器5的性能,以提供用戶真正服務(wù)器5的性能報(bào)告。
服務(wù)器5至少包含有緩存單元4,緩存單元4用于存儲(chǔ)服務(wù)器5所接收的數(shù)據(jù)包內(nèi)的數(shù)據(jù)資料。其中緩存單元4可為服務(wù)器5的內(nèi)存(Memory)、硬盤(Hard Disk)與高速緩存(Cache)內(nèi)存的組合中任一一種。服務(wù)器5的性能在于有效的處理任何客戶端1、2的要求,因此,根據(jù)本發(fā)明所提供的多線程的網(wǎng)絡(luò)壓力測(cè)試方法中,服務(wù)器5以主線程接收客戶端1、2的聯(lián)機(jī)要求及與客戶端1、2建立聯(lián)機(jī),以次線程來(lái)處理服務(wù)器5與客戶端1、2之間的數(shù)據(jù)包傳遞及其相關(guān)處理。其詳細(xì)的流程步驟,將在下段落中說(shuō)明。
請(qǐng)參閱圖2,為服務(wù)器5的主線程的步驟流程圖,以服務(wù)器5以主線程對(duì)單一客戶端1的回應(yīng)為第一實(shí)施例,主線程包含有下列步驟步驟100首先,服務(wù)器5建立鏈接表;步驟120然后,服務(wù)器5以主線程接收來(lái)自客戶端1的聯(lián)機(jī)請(qǐng)求;步驟140再者,建立對(duì)應(yīng)聯(lián)機(jī)請(qǐng)求的連接端口(Socket),并發(fā)送聯(lián)機(jī)數(shù)據(jù)至客戶端1。其中聯(lián)機(jī)數(shù)據(jù)中至少包含有連接端口的狀態(tài)、接收數(shù)據(jù)包的緩存單元4名稱及緩存單元4的長(zhǎng)度值;步驟160接著,服務(wù)器5通過(guò)連接端口與客戶端1建立聯(lián)機(jī),并將聯(lián)機(jī)記錄于鏈接表中;步驟180再建立至少一條次線程。其中次線程處理服務(wù)器5與客戶端1之間數(shù)據(jù)包傳遞及執(zhí)行數(shù)據(jù)包內(nèi)的要求動(dòng)作;步驟200然后,當(dāng)服務(wù)器5的主線程接收來(lái)自次線程的結(jié)束信息時(shí),則執(zhí)行步驟220,當(dāng)服務(wù)器5的主線程未接收來(lái)自次線程的結(jié)束信息時(shí),則執(zhí)行步驟120,直至服務(wù)器5接收到次線程發(fā)送的結(jié)束信息后,才斷開客戶端1的聯(lián)機(jī);及步驟220服務(wù)器5的主線程刪除記錄于鏈接表中的客戶端1的聯(lián)機(jī),以斷開服務(wù)器5與客戶端1的聯(lián)機(jī)。
請(qǐng)參閱圖3,為服務(wù)器5的次線程的步驟流程圖,此服務(wù)器5以一條次線程處理服務(wù)器5與客戶端1之間數(shù)據(jù)包傳遞及執(zhí)行相關(guān)動(dòng)作為例。在服務(wù)器5建立次線程的步驟180后,次線程的流程包含有下列步驟步驟181首先,服務(wù)器5通過(guò)次線程接收來(lái)自客戶端1的數(shù)據(jù)包;步驟182接著判斷數(shù)據(jù)包類型,其中數(shù)據(jù)包類型包含有讀取請(qǐng)求類型、結(jié)束請(qǐng)求類型、寫入請(qǐng)求類型中的任一一個(gè),當(dāng)數(shù)據(jù)包類型為讀取請(qǐng)求類型時(shí)轉(zhuǎn)步驟183,當(dāng)數(shù)據(jù)包類型為結(jié)束請(qǐng)求類型時(shí)轉(zhuǎn)步驟190,當(dāng)數(shù)據(jù)包類型為寫入請(qǐng)求類型時(shí)轉(zhuǎn)步驟195;步驟183服務(wù)器5通過(guò)次線程將數(shù)據(jù)包內(nèi)的數(shù)據(jù)資料存儲(chǔ)在緩存單元4;步驟184至緩存單元4讀取此數(shù)據(jù)資料;步驟185并將此數(shù)據(jù)包通過(guò)次線程發(fā)送至客戶端1。
步驟190次線程發(fā)送結(jié)束信息至主線程;步驟191刪除緩存單元4內(nèi)的所有的數(shù)據(jù)資料,終止次線程的運(yùn)作;步驟195服務(wù)器5通過(guò)次線程將預(yù)先存儲(chǔ)于緩存單元4內(nèi)的數(shù)據(jù)資料發(fā)送至客戶端1。
請(qǐng)參照?qǐng)D4,為根據(jù)本發(fā)明所提供的另一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法的流程圖,由多數(shù)個(gè)客戶端1、2對(duì)服務(wù)器5進(jìn)行大量數(shù)據(jù)的讀寫動(dòng)作,用于測(cè)試服務(wù)器5對(duì)單一客戶端1、2的回應(yīng),而服務(wù)器5至少包含緩存單元4。此以單一客戶端1對(duì)服務(wù)器5執(zhí)行數(shù)據(jù)包傳遞為例。此方法包含有下列步驟步驟300首先,客戶端1建立第一時(shí)間值、第二時(shí)間值及結(jié)束值;步驟310接著發(fā)送聯(lián)機(jī)請(qǐng)求至服務(wù)器5,以建立聯(lián)機(jī);步驟320判斷客戶端1在第一時(shí)間值內(nèi)是否接收到來(lái)自服務(wù)器5的聯(lián)機(jī)數(shù)據(jù),若是轉(zhuǎn)步驟330,若否轉(zhuǎn)步驟321;
步驟321客戶端1建立第一錯(cuò)誤報(bào)告,并再次發(fā)送聯(lián)機(jī)請(qǐng)求至服務(wù)器5;步驟330客戶端1接收到聯(lián)機(jī)數(shù)據(jù)后,開始發(fā)送數(shù)據(jù)包至服務(wù)器5;步驟340判斷客戶端2在第二時(shí)間值內(nèi)是否接收到來(lái)自服務(wù)器5的數(shù)據(jù)包,若是轉(zhuǎn)步驟350,若否轉(zhuǎn)步驟341。其中聯(lián)機(jī)數(shù)據(jù)中至少包含有連接端口的狀態(tài)、接收數(shù)據(jù)包的緩存單元4名稱及緩存單元4的長(zhǎng)度值。
步驟341客戶端1建立第二錯(cuò)誤報(bào)告,并斷開服務(wù)器5的聯(lián)機(jī);步驟350然后客戶端1對(duì)比數(shù)據(jù)包與接收的數(shù)據(jù)包是否相符或一致,若相符或一致時(shí)轉(zhuǎn)步驟360,若不相符或不一致時(shí)轉(zhuǎn)步驟361;步驟360接著計(jì)數(shù)接收數(shù)據(jù)包的次數(shù)值,并繼續(xù)執(zhí)行步驟370;步驟361客戶端1建立第三錯(cuò)誤報(bào)告,并斷開服務(wù)器5的聯(lián)機(jī);步驟370判斷客戶端1結(jié)束值與次數(shù)值是否一致或相同,若客戶端1確認(rèn)結(jié)束值與次數(shù)值一致或相同時(shí)轉(zhuǎn)步驟380,若不一致或不相同時(shí)轉(zhuǎn)步驟360;步驟380客戶端1斷開與服務(wù)器5聯(lián)機(jī)。
使用本發(fā)明所述方法測(cè)試服務(wù)器5的網(wǎng)絡(luò)壓力測(cè)試時(shí),服務(wù)器5的中央處理器不因?yàn)榻邮占鞍l(fā)送數(shù)據(jù)包的動(dòng)作,而導(dǎo)致中央處理器的占用率達(dá)到100%;因此,能達(dá)到真正網(wǎng)絡(luò)壓力測(cè)試的目的,并提供用戶真正服務(wù)器5的性能報(bào)告。
當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法,由多個(gè)客戶端對(duì)一服務(wù)器進(jìn)行大量數(shù)據(jù)的讀寫動(dòng)作,用于測(cè)試該服務(wù)器對(duì)單一客戶端的響應(yīng),而該服務(wù)器至少包含一緩存單元,其特征在于,包含有下列步驟該服務(wù)器建立一鏈接表;該服務(wù)器以一主線程接收來(lái)自該客戶端的一聯(lián)機(jī)請(qǐng)求;該服務(wù)器建立對(duì)應(yīng)該聯(lián)機(jī)請(qǐng)求的一連接端口,并送出一聯(lián)機(jī)數(shù)據(jù)至該客戶端;該服務(wù)器通過(guò)該連接端口與該客戶端建立一聯(lián)機(jī),并將該聯(lián)機(jī)記錄于該鏈接表;該服務(wù)器建立至少一次線程;該次線程接收來(lái)自該客戶端的一數(shù)據(jù)包;及該次線程回傳該數(shù)據(jù)包至該客戶端。
2.根據(jù)權(quán)利要求1所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,還包含有下列步驟該主線程接收來(lái)自該次線程的一結(jié)束信息;及該主線程將該聯(lián)機(jī)至該鏈接表中刪除。
3.根據(jù)權(quán)利要求1所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該次線程接收來(lái)自該客戶端的一數(shù)據(jù)包的步驟中,包含有該次線程判斷一數(shù)據(jù)包類型的步驟。
4.根據(jù)權(quán)利要求3所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該數(shù)據(jù)包類型包含一讀取請(qǐng)求類型、一寫入請(qǐng)求類型及一結(jié)束請(qǐng)求類型的任一一個(gè)。
5.根據(jù)權(quán)利要求4所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該次線程判斷一數(shù)據(jù)包類型的步驟中,當(dāng)該數(shù)據(jù)包類型為該讀取請(qǐng)求時(shí),執(zhí)行下列步驟該次線程將接收的該數(shù)據(jù)包內(nèi)的該數(shù)據(jù)資料存儲(chǔ)在該緩存單元;及該次線程至該緩存單元讀取該數(shù)據(jù)資料。
6.根據(jù)權(quán)利要求4所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該次線程判斷一數(shù)據(jù)包類型的步驟中,當(dāng)該數(shù)據(jù)包類型為該寫入請(qǐng)求時(shí),執(zhí)行該次線程將存儲(chǔ)于該緩存單元的該數(shù)據(jù)資料發(fā)送至該客戶端的步驟。
7.根據(jù)權(quán)利要求4所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,各該次線程判斷一數(shù)據(jù)包類型的步驟中,當(dāng)該數(shù)據(jù)包類型為該結(jié)束請(qǐng)求時(shí),包含有下列步驟該次線程發(fā)送該結(jié)束信息至該主線程;及該次線程刪除該緩存單元的所有該數(shù)據(jù)資料。
8.一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法,由多個(gè)客戶端對(duì)一服務(wù)器進(jìn)行大量數(shù)據(jù)的讀寫動(dòng)作,用于測(cè)試該服務(wù)器對(duì)單一客戶端的響應(yīng),而該服務(wù)器至少包含一緩存單元,其特征在于,包含有下列步驟該客戶端建立一第一時(shí)間值、一第二時(shí)間值及一結(jié)束值;該客戶端發(fā)送一聯(lián)機(jī)請(qǐng)求至該服務(wù)器;該客戶端在該第一時(shí)間值內(nèi),接收來(lái)自該服務(wù)器的一聯(lián)機(jī)數(shù)據(jù),建立聯(lián)機(jī);該客戶端發(fā)送一數(shù)據(jù)包至該服務(wù)器;該客戶端在該第二時(shí)間值內(nèi),接收來(lái)自該服務(wù)器的該數(shù)據(jù)包;該客戶端對(duì)比該數(shù)據(jù)包與接收的該數(shù)據(jù)包為相符;該客戶端計(jì)數(shù)接收該數(shù)據(jù)包的一次數(shù)值;該客戶端確認(rèn)該結(jié)束值與該次數(shù)值為相符;及該客戶端斷開該服務(wù)器端的聯(lián)機(jī)。
9.根據(jù)權(quán)利要求8所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該客戶端在該第一時(shí)間值內(nèi),接收來(lái)自服務(wù)器的一聯(lián)機(jī)數(shù)據(jù),建立聯(lián)機(jī)的步驟,當(dāng)未在該第一時(shí)間值內(nèi)接收該聯(lián)機(jī)數(shù)據(jù)時(shí),包含有該客戶端建立一第一錯(cuò)誤報(bào)告,并再次發(fā)送該聯(lián)機(jī)請(qǐng)求至該服務(wù)器的步驟。
10.根據(jù)權(quán)利要求8所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該客戶端在該第二時(shí)間值內(nèi),接收來(lái)自該服務(wù)器的該數(shù)據(jù)包的步驟,當(dāng)未在該第二時(shí)間值內(nèi)接收該數(shù)據(jù)包時(shí),包含有該客戶端建立一第二錯(cuò)誤報(bào)告,并斷開與該服務(wù)器聯(lián)機(jī)的步驟。
11.根據(jù)權(quán)利要求8所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該客戶端對(duì)比該數(shù)據(jù)包與接收的該數(shù)據(jù)包為相符的步驟,當(dāng)該數(shù)據(jù)包與接收的該數(shù)據(jù)包為不相符時(shí),包含有該客戶端建立一第三錯(cuò)誤報(bào)告,并斷開與該服務(wù)器聯(lián)機(jī)的步驟。
12.根據(jù)權(quán)利要求8所述的多線程的網(wǎng)絡(luò)壓力測(cè)試方法,其特征在于,該客戶端確認(rèn)該預(yù)定結(jié)束值與該次數(shù)值為相符的步驟,當(dāng)該預(yù)定結(jié)束值與該次數(shù)值為不同時(shí),執(zhí)行該客戶端計(jì)數(shù)該響應(yīng)數(shù)據(jù)包的一次數(shù)值的步驟。
全文摘要
本發(fā)明公開了一種多線程的網(wǎng)絡(luò)壓力測(cè)試方法,由多數(shù)個(gè)客戶端對(duì)服務(wù)器進(jìn)行大量數(shù)據(jù)的讀寫動(dòng)作,用以測(cè)試服務(wù)器對(duì)單一客戶端的響應(yīng),服務(wù)器以主線程接收到客戶端的聯(lián)機(jī)要求后,與客戶端建立聯(lián)機(jī),接著產(chǎn)生次線程來(lái)處理與客戶端之間的傳遞的數(shù)據(jù)包及其相關(guān)處理,使服務(wù)器不因接收及發(fā)送數(shù)據(jù)包的動(dòng)作,而導(dǎo)致服務(wù)器的中央處理器的占用率達(dá)到100%,以達(dá)到真正網(wǎng)絡(luò)壓力測(cè)試的目的,并提供用戶真正服務(wù)器的性能報(bào)告。
文檔編號(hào)H04L12/26GK1953401SQ20051010928
公開日2007年4月25日 申請(qǐng)日期2005年10月20日 優(yōu)先權(quán)日2005年10月20日
發(fā)明者馬隨義, 周宏亮, 陳玄同, 劉文涵 申請(qǐng)人:英業(yè)達(dá)股份有限公司