嵌入式環(huán)境下Web Service技術(shù)的實(shí)現(xiàn)
2.3 性能測(cè)試
由于Web Service函數(shù)是被其他程序調(diào)用的,一般不會(huì)提供界面讓用戶或測(cè)試人員直接使用,這造成了測(cè)試上的困難。由eviware公司推出的Web Service測(cè)試軟件soapUI極大的改變了這一局面,在soapUI中通過(guò)簡(jiǎn)單的操作即可完成復(fù)雜的測(cè)試,不需要了解底層的通訊細(xì)節(jié),大大減輕了工作量。為了測(cè)試系統(tǒng)的性能,將STM32F107VC接入局域網(wǎng)之中,并開啟A/D采樣,客戶端通過(guò)Web Service函數(shù)ReadValue獲取指定通道的A/D采樣值(最大值、最小值、平均值)。SOAP消息的具體請(qǐng)求和響應(yīng)示例如下:
在soapUI中模擬多個(gè)用戶線程對(duì)系統(tǒng)進(jìn)行90 min的壓力測(cè)試,每個(gè)線程每次的請(qǐng)求間隔隨機(jī)分布在0.5~1 s之間,圖4給出了10個(gè)用戶線程下系統(tǒng)的平均響應(yīng)時(shí)間曲線,其中橫軸表示經(jīng)過(guò)的時(shí)間(單位:s),縱軸表示線程個(gè)數(shù)以及SOAP請(qǐng)求平均響應(yīng)時(shí)間(單位:ms)。由于系統(tǒng)同一時(shí)間只處理一個(gè)SOAP請(qǐng)求,當(dāng)多個(gè)用戶線程同時(shí)連接時(shí),未處理的請(qǐng)求會(huì)被排隊(duì),其處理時(shí)間也會(huì)相應(yīng)延長(zhǎng)。受網(wǎng)絡(luò)環(huán)境變化和連接并發(fā)情況的影響,平均響應(yīng)時(shí)間會(huì)出現(xiàn)波動(dòng),在10個(gè)線程的情況下平均響應(yīng)時(shí)間介于30~50 ms之間,整個(gè)系統(tǒng)保持穩(wěn)定,沒有內(nèi)存泄露或者連接丟失現(xiàn)象發(fā)生。本文引用地址:http://www.ex-cimer.com/article/149382.htm
3 結(jié)語(yǔ)
本文基于32位微處理器ARM Cortex-M3以及小型實(shí)時(shí)操作系統(tǒng)FreeRTOS,在資源極其受限的情況下完成了XML語(yǔ)言的解析以及SOAP和HTTP協(xié)議的綁定,實(shí)現(xiàn)了不易實(shí)現(xiàn)的嵌入式Web Service技術(shù)。XML語(yǔ)言強(qiáng)大的表達(dá)能力和SOAP協(xié)議的靈活性,有效地解決了嵌入式設(shè)備與異構(gòu)平臺(tái)間的信息交換問(wèn)題,大大降低了系統(tǒng)集成的難度。隨著網(wǎng)絡(luò)化思想的進(jìn)一步深入以及硬件成本的逐步下降,面向服務(wù)的編程思想所代表的新一代軟件架構(gòu)技術(shù)會(huì)逐漸滲透到越來(lái)越多的嵌入式系統(tǒng)當(dāng)中。
c++相關(guān)文章:c++教程
評(píng)論