基于國產(chǎn)基礎(chǔ)軟件應(yīng)用系統(tǒng)的性能測試與優(yōu)化研究
本文以基于國產(chǎn)基礎(chǔ)軟件的醫(yī)療信息系統(tǒng)為例,介紹如何測試系統(tǒng)在承受高并發(fā)量、高訪問數(shù)據(jù)量情況下的性能,并對影響系統(tǒng)性能的主要因素進(jìn)行分析,提出了系統(tǒng)的性能優(yōu)化方案。實(shí)驗(yàn)結(jié)果表明,該方案大幅提高了系統(tǒng)性能,為基于國產(chǎn)基礎(chǔ)軟件的應(yīng)用系統(tǒng)性能優(yōu)化提供了一個(gè)可借鑒的方法。
1 性能測試
1.1 性能測試方法
性能測試是通過模擬大量用戶與系統(tǒng)進(jìn)行交互的行為,對被測系統(tǒng)進(jìn)行加壓,獲取系統(tǒng)負(fù)載增加或在特定負(fù)載時(shí),用戶的真實(shí)體驗(yàn),從而確定系統(tǒng)所能承受的最大負(fù)載與特定負(fù)載下的性能表現(xiàn)。
系統(tǒng)的性能測試方法較多,按照測試目的分類,可以分為負(fù)載測試、壓力測試、配置測試、并發(fā)測試、可靠性測試等[1]。其中,負(fù)載測試是通過在被測系統(tǒng)上不斷增加負(fù)載壓力,獲得系統(tǒng)在不同負(fù)載下的性能表現(xiàn)。壓力測試主要測試系統(tǒng)資源在飽和狀態(tài)時(shí),應(yīng)用系統(tǒng)能夠提供的最大服務(wù)級別。本文選擇負(fù)載測試和壓力測試對系統(tǒng)進(jìn)行了多輪的測試。
1.2 性能指標(biāo)
性能指標(biāo)是描述系統(tǒng)性能最直接的數(shù)據(jù),提供了性能度量的標(biāo)準(zhǔn)。本文在測試中對并發(fā)用戶數(shù)、響應(yīng)時(shí)間、吞吐量、資源利用率等性能指標(biāo)進(jìn)行監(jiān)控。性能指標(biāo)描述如下:
(1)并發(fā)用戶數(shù),在特定時(shí)間內(nèi),同時(shí)進(jìn)行會話的用戶數(shù)。
(2)響應(yīng)時(shí)間,從請求的發(fā)出到客戶端收到服務(wù)器響應(yīng)所經(jīng)歷的時(shí)間延遲。
(3)吞吐量,在單位時(shí)間內(nèi)系統(tǒng)處理客戶請求的數(shù)量。
(4)資源利用率,系統(tǒng)各種資源的使用狀況,比如服務(wù)器的CPU、內(nèi)存和網(wǎng)絡(luò)帶寬等。
2 性能測試實(shí)施
2.1 系統(tǒng)分析
醫(yī)療信息系統(tǒng)構(gòu)建于國產(chǎn)基礎(chǔ)軟件的政務(wù)信息化領(lǐng)域平臺體系,采用J2EE架構(gòu),使用JSP、Strut、Hibernate等技術(shù)開發(fā),是以國產(chǎn)基礎(chǔ)軟件為核心、低成本的公共服務(wù)系統(tǒng)原型和解決方案。醫(yī)療信息系統(tǒng)體系結(jié)構(gòu)如圖1所示。本文引用地址:http://butianyuan.cn/article/195370.htm
醫(yī)療信息系統(tǒng)主要面向各大醫(yī)院,對醫(yī)院的需求調(diào)研與系統(tǒng)分析如表1所示[2]。
性能測試需要模擬大量用戶的操作行為,需要測試工具的支持來實(shí)現(xiàn)用戶的行為模擬、負(fù)載的生成、數(shù)據(jù)采集與分析等。本文引入測試工具LoadRunner對系統(tǒng)進(jìn)行性能測試,測試基于國產(chǎn)基礎(chǔ)軟件的醫(yī)療信息系統(tǒng)的性能能否滿足表1所示的需求。
2.2 測試環(huán)境
測試時(shí),使用1臺PC機(jī)作為負(fù)載測試機(jī),1臺服務(wù)器作為應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器。PC機(jī)采用100 Mb/s局域網(wǎng)連接服務(wù)器。服務(wù)器軟件組成方案如表2所示[3]。
評論