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

基于國產基礎軟件應用系統的性能測試與優化

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

本文以基于國產基礎軟件的醫療信息系統為例,介紹如何測試系統在承受高并發量、高訪問數據量情況下的性能,并對影響系統性能的主要因素進行分析,提出了系統的性能優化方案。實驗結果表明,該方案大幅提高了系統性能,為基于國產基礎軟件的應用系統性能優化提供了一個可借鑒的方法。

1 性能測試

1.1 性能測試方法

性能測試是通過模擬大量用戶與系統進行交互的行為,對被測系統進行加壓,獲取系統負載增加或在特定負載時,用戶的真實體驗,從而確定系統所能承受的最大負載與特定負載下的性能表現。

系統的性能測試方法較多,按照測試目的分類,可以分為負載測試、壓力測試、配置測試、并發測試、可靠性測試等。其中,負載測試是通過在被測系統上不斷增加負載壓力,獲得系統在不同負載下的性能表現。壓力測試主要測試系統資源在飽和狀態時,應用系統能夠提供的最大服務級別。本文選擇負載測試和壓力測試對系統進行了多輪的測試。

1.2 性能指標

性能指標是描述系統性能最直接的數據,提供了性能度量的標準。本文在測試中對并發用戶數、響應時間、吞吐量、資源利用率等性能指標進行監控。性能指標描述如下:

(1)并發用戶數,在特定時間內,同時進行會話的用戶數。

(2)響應時間,從請求的發出到客戶端收到服務器響應所經歷的時間延遲。

(3)吞吐量,在單位時間內系統處理客戶請求的數量。

(4)資源利用率,系統各種資源的使用狀況,比如服務器的CPU、內存和網絡帶寬等。

2 性能測試實施

2.1 系統分析

醫療信息系統構建于國產基礎軟件的政務信息化領域平臺體系,采用J2EE架構,使用JSP、Strut、Hibernate等技術開發,是以國產基礎軟件為核心、低成本的公共服務系統原型和解決方案。醫療信息系統體系結構如圖1所示。





醫療信息系統主要面向各大醫院,對醫院的需求調研與系統分析如表1所示。





性能測試需要模擬大量用戶的操作行為,需要測試工具的支持來實現用戶的行為模擬、負載的生成、數據采集與分析等。本文引入測試工具LoadRunner對系統進行性能測試,測試基于國產基礎軟件的醫療信息系統的性能能否滿足表1所示的需求。

   



2.2 測試環境

測試時,使用1臺PC機作為負載測試機,1臺服務器作為應用服務器和數據庫服務器。PC機采用100 Mb/s局域網連接服務器。服務器軟件組成方案如表2所示。





2.3 錄制測試腳本

測試腳本是一組代碼,執行時,可以模擬用戶操作對服務器產生的請求數據,或是模擬用戶執行操作的過程、用戶等待行為等。腳本的錄制按照以下步驟執行:

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

(2)每個操作定義為一個事務,在事務前后加入隨機的思考時間。

(3)在事務前設置集合點,保證用戶執行操作的并發。

(4)在用戶實際操作的過程中,不同用戶提交的數據、系統動態生成的會話標志是不一致的。通過參數化來設定差異值的取值范圍、迭代方式,實現數據的變量化,而系統的會話標志如session,則需要設置關聯來保存。

2.4 設計測試場景

在性能測試中,常見的錯誤觀點是只設置單一的場景。場景的設計是至關重要的,只有設計的測試場景真實地反映用戶的實際場景,性能測試的結果才可靠。

場景的設計需要考慮到系統運行時,不同操作對系統形成的負載差異,需要確定典型的應用場景下不同操作用戶的比例。醫療信息系統日常執行新建患者資料、查詢患者資料、新建日程的比例分別為25%、60%、15%。

在創建的場景中載入已錄制的三組測試腳本,并設置執行比例。編輯場景中的計劃生產器,設置虛擬用戶以一定的間隔時間按比例遞增,逐步啟動與服務器建立連接。

2.5 分析測試結果

在性能測試的過程中,LoadRunner會收集到大量的測試數據,包括每個性能指標,如事務的錯誤、警告和通知信息等。并發用戶數為200的事務響應時間如表3所示。





在測試過程中出現的問題:(1)大量用戶并發時,服務器CPU、內存的資源利用率卻很低;(2)事務執行成功率低、成功事務的平均響應時間長,很多事務因為連接超時而失敗;(3)出現內存泄露;(4)Tongweb控制臺顯示連接數據庫時出現網絡通信異常。

從測試結果可見,系統存在性能瓶頸。因此,為了使系統達到最佳的性能,需要分析測試環境對系統性能的影響,對其進行性能優化,摒除系統性能瓶頸。

   



3 系統優化

3.1 系統優化框架

根據Mercury公司的報告,系統的性能問題由許多因素構成。系統結構、代碼的優化程度、網絡環境、數據庫服務器、應用服務器都會對系統的性能表現造成影響。但是,影響系統優化主要因素是網絡環境、應用程序、應用服務器和數據庫服務器?紤]到這些因素之間的相互依賴關系,采用從高層到低層的優化方法。該方法的特點是先調優高層的環境,然后調優較低層的環境,符合高層實現依賴于低層實現的一般規律。優化層次如圖2所示,但如果隨意調整,容易造成循環。





(1)網絡環境優化

網絡是影響系統性能的重要因素之一,其影響主要反映在事務的響應時間與吞吐量上。在測試過程中,如果吞吐量沒有隨并發用戶增多而增大,且事務響應時間比較長時,可以考慮對網絡進行優化,改善網絡的帶寬。

(2)應用程序優化

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

(3)應用服務器優化

應用服務器優化集中在最大連接限制數、內存配置。在大量并發的情況下,應用服務器承受很大的負載壓力,過多地連接會很快消耗掉大量系統資源,過低的連接限制會增大連接時延,延長事務響應時間。優化時根據系統資源合理設置應用服務器最大連接限制數、內存,避免內存泄露現象出現,盡量減少響應時間。

(4)數據庫系統優化

數據庫系統優化主要是配置數據緩存區大小、最大并發會話數,為數據庫建立合理的索引。設置較大數據緩存區,可以減少數據交換次數,降低系統資源消耗。為大數據量、訪問頻繁的數據庫表建立合理的索引,能夠消除對表的順序存儲,從而提高系統的檢索性能。在CPU資源和I/O資源可用的情況下,如果服務器有很長的事務等待隊列,增大最大并發會話數,可以減少響應時間。

3.2 醫療信息系統的優化方案

本文的性能測試是在局域網中進行,因此可以排除網絡帶寬對系統性能的影響。通過分析性能測試結果,結合系統優化框架,醫療信息系統的優化措施如下:

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

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

   



(3)在數據庫系統方面,通過對數據表的檢查,發現數據庫表沒有建立索引,為訪問頻繁的表添加了索引。DM數據庫的參數調整如表4所示。





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





通過對表3、表5結果對比可以看出,經過系統優化后,大幅提升了系統的性能。系統性能也達到了醫療信息系統的性能總體需求,確保了基于國產基礎軟件的醫療信息系統能夠滿足醫療工作及日常辦公需求。

本文介紹了基于國產基礎軟件的醫療信息系統的性能測試方法和過程,并對影響系統性能的主要因素進行了分析,提出了一個系統的性能優化方案。測試結果表明,本文提出的優化方案可以明顯改進基于國產基礎軟件的醫療信息系統的性能,能夠滿足應用的需求,可以應用于我國的醫療信息化建設中。

參考文獻

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

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

張忠磊,孫玉娟,李秀芳.國產軟硬件在實現電子政務集成應用上的框架研究[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系統性能測試的設計與實現[J].計算機工程,2009,35(10):51-53.

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

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 我們是Microchip
  • Cortex-M4外設 —— TC&TCC結合事件系統&DMA優化任務培訓教程
  • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
  • 想要避免發生災難,就用MPLAB SiC電源仿真器!
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 午夜精品福利影院 | 亚洲色图男人天堂 | 国产极品喷水视频 | 思思91精品国产综合在线 | 国产亚洲高清在线精品不卡 | va亚洲va欧美va国产综合 | 中文字幕日本不卡一二三区 | 韩国免费a级毛片 | 朋友的母亲在线播放 | 国产午夜精品免费一二区 | jk制服福利在线播放 | 女人18片毛片60分钟 | 日本亚洲高清乱码中文在线观看 | 亚洲无吗在线视频 | 欧美日韩国产一区二区 | 亚洲欧美在线视频 | 欧美成人久久一级c片免费 欧美成人久久久免费播放 欧美成人精品在线 | 狠狠五月深爱婷婷网 | 欧美在线免费观看 | tube8欧美巨大 | 欧美高清在线精品一区 | 99精品国产第一福利网站 | 国内自拍成人网在线视频 | 日韩中文字幕一区二区不卡 | 欧美亚洲欧美日韩中文二区 | 黄色片aaaa | 黄色网站在线观看视频 | 亚洲激情视频网站 | 欧美三级网站 | 青青草手机视频在线观看 | 一本色道久久88加勒比—综合 | 99久热成人精品视频 | 狠狠色丁香婷婷综合橹不卡 | yese夜色资源网 | 欧美精彩视频在线观看 | 国产一区二区三区在线观看精品 | 亚洲天堂日韩在线 | 亚欧日韩毛片在线看免费网站 | 国产福利区一区二在线观看 | 久久青青草原精品影院 | 嫩草影院在线观看网站成人 |