国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于國產(chǎn)基礎(chǔ)軟件應(yīng)用系統(tǒng)的性能測試與優(yōu)化

發(fā)布時(shí)間:2011-1-21 20:21    發(fā)布者:techshare
關(guān)鍵詞: 軟件 , 性能測試 , 優(yōu)化
國產(chǎn)基礎(chǔ)軟件的性能是影響軟件應(yīng)用的關(guān)鍵因素,只有國產(chǎn)基礎(chǔ)軟件的應(yīng)用系統(tǒng)在性能方面滿足了用戶的需求才能被用戶接受。應(yīng)用系統(tǒng)與國產(chǎn)基礎(chǔ)軟件的集成理論上是可行的,但是,在高并發(fā)量、高訪問數(shù)據(jù)量情況下,基于國產(chǎn)基礎(chǔ)軟件應(yīng)用系統(tǒng)的性能能否滿足需求尚未得到驗(yàn)證。因此,需要對(duì)國產(chǎn)基礎(chǔ)軟件組合以及包含實(shí)際應(yīng)用的完整系統(tǒng)進(jìn)行性能測試。

本文以基于國產(chǎn)基礎(chǔ)軟件的醫(yī)療信息系統(tǒng)為例,介紹如何測試系統(tǒng)在承受高并發(fā)量、高訪問數(shù)據(jù)量情況下的性能,并對(duì)影響系統(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)行交互的行為,對(duì)被測系統(tǒng)進(jìn)行加壓,獲取系統(tǒng)負(fù)載增加或在特定負(fù)載時(shí),用戶的真實(shí)體驗(yàn),從而確定系統(tǒng)所能承受的最大負(fù)載與特定負(fù)載下的性能表現(xiàn)。

系統(tǒng)的性能測試方法較多,按照測試目的分類,可以分為負(fù)載測試、壓力測試、配置測試、并發(fā)測試、可靠性測試等。其中,負(fù)載測試是通過在被測系統(tǒng)上不斷增加負(fù)載壓力,獲得系統(tǒng)在不同負(fù)載下的性能表現(xiàn)。壓力測試主要測試系統(tǒng)資源在飽和狀態(tài)時(shí),應(yīng)用系統(tǒng)能夠提供的最大服務(wù)級(jí)別。本文選擇負(fù)載測試和壓力測試對(duì)系統(tǒng)進(jìn)行了多輪的測試。

1.2 性能指標(biāo)

性能指標(biāo)是描述系統(tǒng)性能最直接的數(shù)據(jù),提供了性能度量的標(biāo)準(zhǔn)。本文在測試中對(duì)并發(fā)用戶數(shù)、響應(yīng)時(shí)間、吞吐量、資源利用率等性能指標(biāo)進(jìn)行監(jiān)控。性能指標(biāo)描述如下:

(1)并發(fā)用戶數(shù),在特定時(shí)間內(nèi),同時(shí)進(jìn)行會(huì)話的用戶數(shù)。

(2)響應(yīng)時(shí)間,從請(qǐng)求的發(fā)出到客戶端收到服務(wù)器響應(yīng)所經(jīng)歷的時(shí)間延遲。

(3)吞吐量,在單位時(shí)間內(nèi)系統(tǒng)處理客戶請(qǐ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)域平臺(tái)體系,采用J2EE架構(gòu),使用JSP、Strut、Hibernate等技術(shù)開發(fā),是以國產(chǎn)基礎(chǔ)軟件為核心、低成本的公共服務(wù)系統(tǒng)原型和解決方案。醫(yī)療信息系統(tǒng)體系結(jié)構(gòu)如圖1所示。





醫(yī)療信息系統(tǒng)主要面向各大醫(yī)院,對(duì)醫(yī)院的需求調(diào)研與系統(tǒng)分析如表1所示。





性能測試需要模擬大量用戶的操作行為,需要測試工具的支持來實(shí)現(xiàn)用戶的行為模擬、負(fù)載的生成、數(shù)據(jù)采集與分析等。本文引入測試工具LoadRunner對(duì)系統(tǒng)進(jìn)行性能測試,測試基于國產(chǎn)基礎(chǔ)軟件的醫(yī)療信息系統(tǒng)的性能能否滿足表1所示的需求。

   



2.2 測試環(huán)境

測試時(shí),使用1臺(tái)PC機(jī)作為負(fù)載測試機(jī),1臺(tái)服務(wù)器作為應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器。PC機(jī)采用100 Mb/s局域網(wǎng)連接服務(wù)器。服務(wù)器軟件組成方案如表2所示。





2.3 錄制測試腳本

測試腳本是一組代碼,執(zhí)行時(shí),可以模擬用戶操作對(duì)服務(wù)器產(chǎn)生的請(qǐng)求數(shù)據(jù),或是模擬用戶執(zhí)行操作的過程、用戶等待行為等。腳本的錄制按照以下步驟執(zhí)行:

(1)使用LoadRunner錄制測試從業(yè)務(wù)使用頻繁程度以及負(fù)載量的大小選擇新建患者資料、患者資料查詢、新增日程功能作為三組測試。這三組測試腳本模擬的執(zhí)行過程為系統(tǒng)登錄、業(yè)務(wù)操作和退出系統(tǒng)。

(2)每個(gè)操作定義為一個(gè)事務(wù),在事務(wù)前后加入隨機(jī)的思考時(shí)間。

(3)在事務(wù)前設(shè)置集合點(diǎn),保證用戶執(zhí)行操作的并發(fā)。

(4)在用戶實(shí)際操作的過程中,不同用戶提交的數(shù)據(jù)、系統(tǒng)動(dòng)態(tài)生成的會(huì)話標(biāo)志是不一致的。通過參數(shù)化來設(shè)定差異值的取值范圍、迭代方式,實(shí)現(xiàn)數(shù)據(jù)的變量化,而系統(tǒng)的會(huì)話標(biāo)志如session,則需要設(shè)置關(guān)聯(lián)來保存。

2.4 設(shè)計(jì)測試場景

在性能測試中,常見的錯(cuò)誤觀點(diǎn)是只設(shè)置單一的場景。場景的設(shè)計(jì)是至關(guān)重要的,只有設(shè)計(jì)的測試場景真實(shí)地反映用戶的實(shí)際場景,性能測試的結(jié)果才可靠。

場景的設(shè)計(jì)需要考慮到系統(tǒng)運(yùn)行時(shí),不同操作對(duì)系統(tǒng)形成的負(fù)載差異,需要確定典型的應(yīng)用場景下不同操作用戶的比例。醫(yī)療信息系統(tǒng)日常執(zhí)行新建患者資料、查詢患者資料、新建日程的比例分別為25%、60%、15%。

在創(chuàng)建的場景中載入已錄制的三組測試腳本,并設(shè)置執(zhí)行比例。編輯場景中的計(jì)劃生產(chǎn)器,設(shè)置虛擬用戶以一定的間隔時(shí)間按比例遞增,逐步啟動(dòng)與服務(wù)器建立連接。

2.5 分析測試結(jié)果

在性能測試的過程中,LoadRunner會(huì)收集到大量的測試數(shù)據(jù),包括每個(gè)性能指標(biāo),如事務(wù)的錯(cuò)誤、警告和通知信息等。并發(fā)用戶數(shù)為200的事務(wù)響應(yīng)時(shí)間如表3所示。





在測試過程中出現(xiàn)的問題:(1)大量用戶并發(fā)時(shí),服務(wù)器CPU、內(nèi)存的資源利用率卻很低;(2)事務(wù)執(zhí)行成功率低、成功事務(wù)的平均響應(yīng)時(shí)間長,很多事務(wù)因?yàn)檫B接超時(shí)而失敗;(3)出現(xiàn)內(nèi)存泄露;(4)Tongweb控制臺(tái)顯示連接數(shù)據(jù)庫時(shí)出現(xiàn)網(wǎng)絡(luò)通信異常。

從測試結(jié)果可見,系統(tǒng)存在性能瓶頸。因此,為了使系統(tǒng)達(dá)到最佳的性能,需要分析測試環(huán)境對(duì)系統(tǒng)性能的影響,對(duì)其進(jìn)行性能優(yōu)化,摒除系統(tǒng)性能瓶頸。

   



3 系統(tǒng)優(yōu)化

3.1 系統(tǒng)優(yōu)化框架

根據(jù)Mercury公司的報(bào)告,系統(tǒng)的性能問題由許多因素構(gòu)成。系統(tǒng)結(jié)構(gòu)、代碼的優(yōu)化程度、網(wǎng)絡(luò)環(huán)境、數(shù)據(jù)庫服務(wù)器、應(yīng)用服務(wù)器都會(huì)對(duì)系統(tǒng)的性能表現(xiàn)造成影響。但是,影響系統(tǒng)優(yōu)化主要因素是網(wǎng)絡(luò)環(huán)境、應(yīng)用程序、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器。考慮到這些因素之間的相互依賴關(guān)系,采用從高層到低層的優(yōu)化方法。該方法的特點(diǎn)是先調(diào)優(yōu)高層的環(huán)境,然后調(diào)優(yōu)較低層的環(huán)境,符合高層實(shí)現(xiàn)依賴于低層實(shí)現(xiàn)的一般規(guī)律。優(yōu)化層次如圖2所示,但如果隨意調(diào)整,容易造成循環(huán)。





(1)網(wǎng)絡(luò)環(huán)境優(yōu)化

網(wǎng)絡(luò)是影響系統(tǒng)性能的重要因素之一,其影響主要反映在事務(wù)的響應(yīng)時(shí)間與吞吐量上。在測試過程中,如果吞吐量沒有隨并發(fā)用戶增多而增大,且事務(wù)響應(yīng)時(shí)間比較長時(shí),可以考慮對(duì)網(wǎng)絡(luò)進(jìn)行優(yōu)化,改善網(wǎng)絡(luò)的帶寬。

(2)應(yīng)用程序優(yōu)化

應(yīng)用程序優(yōu)化針對(duì)數(shù)據(jù)訪問層,其優(yōu)化措施主要有以下幾方面:(1)優(yōu)化SQL語句;(2)盡量引入連接池機(jī)制,減少頻繁打開、關(guān)閉數(shù)據(jù)庫連接的操作,控制當(dāng)前激活的數(shù)據(jù)庫連接總數(shù),防止系統(tǒng)過載;(3)引入緩存機(jī)制,以減少磁盤I/O的次數(shù)。這些優(yōu)化措施能夠提高數(shù)據(jù)讀取速率,減少訪問響應(yīng)時(shí)間,降低資源的使用率。

(3)應(yīng)用服務(wù)器優(yōu)化

應(yīng)用服務(wù)器優(yōu)化集中在最大連接限制數(shù)、內(nèi)存配置。在大量并發(fā)的情況下,應(yīng)用服務(wù)器承受很大的負(fù)載壓力,過多地連接會(huì)很快消耗掉大量系統(tǒng)資源,過低的連接限制會(huì)增大連接時(shí)延,延長事務(wù)響應(yīng)時(shí)間。優(yōu)化時(shí)根據(jù)系統(tǒng)資源合理設(shè)置應(yīng)用服務(wù)器最大連接限制數(shù)、內(nèi)存,避免內(nèi)存泄露現(xiàn)象出現(xiàn),盡量減少響應(yīng)時(shí)間。

(4)數(shù)據(jù)庫系統(tǒng)優(yōu)化

數(shù)據(jù)庫系統(tǒng)優(yōu)化主要是配置數(shù)據(jù)緩存區(qū)大小、最大并發(fā)會(huì)話數(shù),為數(shù)據(jù)庫建立合理的索引。設(shè)置較大數(shù)據(jù)緩存區(qū),可以減少數(shù)據(jù)交換次數(shù),降低系統(tǒng)資源消耗。為大數(shù)據(jù)量、訪問頻繁的數(shù)據(jù)庫表建立合理的索引,能夠消除對(duì)表的順序存儲(chǔ),從而提高系統(tǒng)的檢索性能。在CPU資源和I/O資源可用的情況下,如果服務(wù)器有很長的事務(wù)等待隊(duì)列,增大最大并發(fā)會(huì)話數(shù),可以減少響應(yīng)時(shí)間。

3.2 醫(yī)療信息系統(tǒng)的優(yōu)化方案

本文的性能測試是在局域網(wǎng)中進(jìn)行,因此可以排除網(wǎng)絡(luò)帶寬對(duì)系統(tǒng)性能的影響。通過分析性能測試結(jié)果,結(jié)合系統(tǒng)優(yōu)化框架,醫(yī)療信息系統(tǒng)的優(yōu)化措施如下:

(1)應(yīng)用系統(tǒng)的數(shù)據(jù)庫訪問層采用了數(shù)據(jù)庫持久化技術(shù)Hibernate。編輯應(yīng)用程序的配置文件hibernate.cfg.xml,引入第三方的連接池c3p0,設(shè)置連接池的最大連接數(shù)為100;在Hibernate中使用二級(jí)緩存,設(shè)置Hibernate的加載特征為延遲加載。

(2)在應(yīng)用服務(wù)器方面,調(diào)整Tongweb的JVM堆棧和內(nèi)存的最大值、最大連接人數(shù)。編輯TongWeb4.0/bin/tongserver.sh文件,把JAVA_ARGS=”-Djmx.invoke.getters=true”修改為JAVA_ARGS=”-Xms256m-XmX750m”,調(diào)整JVM堆棧和內(nèi)存的最大值為750 M,增大Tongweb的JVM虛擬堆棧和內(nèi)存值后,不再出現(xiàn)內(nèi)存泄露現(xiàn)象;編輯tongweb4.0/conf/tongweb.xml中socket-back-log由50調(diào)為200,調(diào)整Tongweb的減少需要等待連接數(shù),減少響應(yīng)時(shí)間。

   



(3)在數(shù)據(jù)庫系統(tǒng)方面,通過對(duì)數(shù)據(jù)表的檢查,發(fā)現(xiàn)數(shù)據(jù)庫表沒有建立索引,為訪問頻繁的表添加了索引。DM數(shù)據(jù)庫的參數(shù)調(diào)整如表4所示。





數(shù)據(jù)庫作出這樣的修改主要是大量并發(fā)時(shí),由于數(shù)據(jù)量大,一般將數(shù)據(jù)緩沖區(qū)設(shè)為物理內(nèi)存的80%左右(BUFFER的單位值為8 KB);數(shù)據(jù)庫的最大會(huì)話數(shù)需要大于應(yīng)用程序所設(shè)置的連接池;CPU仍存在可用資源,可提高工作線程數(shù),減少響應(yīng)時(shí)間。優(yōu)化后,并發(fā)用戶數(shù)為200的事務(wù)響應(yīng)時(shí)間如表5所示。





通過對(duì)表3、表5結(jié)果對(duì)比可以看出,經(jīng)過系統(tǒng)優(yōu)化后,大幅提升了系統(tǒng)的性能。系統(tǒng)性能也達(dá)到了醫(yī)療信息系統(tǒng)的性能總體需求,確保了基于國產(chǎn)基礎(chǔ)軟件的醫(yī)療信息系統(tǒng)能夠滿足醫(yī)療工作及日常辦公需求。

本文介紹了基于國產(chǎn)基礎(chǔ)軟件的醫(yī)療信息系統(tǒng)的性能測試方法和過程,并對(duì)影響系統(tǒng)性能的主要因素進(jìn)行了分析,提出了一個(gè)系統(tǒng)的性能優(yōu)化方案。測試結(jié)果表明,本文提出的優(yōu)化方案可以明顯改進(jìn)基于國產(chǎn)基礎(chǔ)軟件的醫(yī)療信息系統(tǒng)的性能,能夠滿足應(yīng)用的需求,可以應(yīng)用于我國的醫(yī)療信息化建設(shè)中。

參考文獻(xiàn)

段念.軟件性能測試過程詳解與案例剖析[M].北京:清華大學(xué)出版社,2006.

郝建營,晏海華,劉超,等.一種有效的Web性能測試方法及其應(yīng)用[J].計(jì)算機(jī)應(yīng)用研究,2007,(1):275-277.

張忠磊,孫玉娟,李秀芳.國產(chǎn)軟硬件在實(shí)現(xiàn)電子政務(wù)集成應(yīng)用上的框架研究[J].微計(jì)算機(jī)信息,2006,22(12-3):198-199.

DRAHEIM D, GRUNDY J, HOSKING J. Realistic load testing of Web applications[C]. Proceedings of the Conference on Software Maintenance and Reengineering,2006.

簡玲.B/S系統(tǒng)性能測試的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2009,35(10):51-53.

熊忠陽,李光勇,張玉芳,等.Web集群系統(tǒng)性能測試與優(yōu)化[J].計(jì)算機(jī)應(yīng)用研究,2008,25(3):826-832.
本文地址:http://www.qingdxww.cn/thread-50461-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 利用模擬開發(fā)工具生態(tài)系統(tǒng)進(jìn)行安全電路設(shè)計(jì)
  • 深度體驗(yàn)Microchip自動(dòng)輔助駕駛應(yīng)用方案——2025巡展開啟報(bào)名!
  • 我們是Microchip
  • 更佳設(shè)計(jì)的解決方案——Microchip模擬開發(fā)生態(tài)系統(tǒng)
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲第一区精品日韩在线播放 | 亚洲日本中文字幕区 | 欧美不卡激情三级在线观看 | 99热精品久久只有精品30 | 午夜激情在线 | 国产免费卡1卡2卡 | 97免费视频在线观看 | 九九热这里都是精品 | 精品在线91 | 日本特一级| 精品国产一区二区三区香蕉 | 成人免费看黄页网址大全 | 黄色免费在线观看网站 | 久草视频在 | 高清性色生活片久久久 | 国产三级精品在线 | 欧美日韩高清不卡一区二区三区 | 成年人在线免费播放 | 日韩中文字幕在线播放 | 久久精品国产一区二区三区不卡 | 亚洲好骚综合 | 大香线蕉97久久 | 久久精品视频国产 | 日韩大片免费观看 | 在线观看欧美视频 | 一区二区三区在线免费视频 | 亚洲日韩男人网在线 | 女人18毛片a级毛片一区二区 | 999热这里全都是精品 | 青青操精品 | 国产一级毛片外aaaa | 久久久久久久99视频 | 亚洲s色大片在线观看 | 亚洲欧美日韩一区高清中文字幕 | 亚洲欧美日韩中文高清一 | 91成人午夜精品福利院在线观看 | 国产精品亚洲精品日韩已方 | 性欧美嫩交hd| 欧美日韩国产一区 | 91精品国产高清久久久久 | 四虎精品影院 |