王蕾 繆國森 劉慧
【摘要】 針對現有云存儲視圖庫系統,采用自動化測試工具與資源監控工具相結合實現服務器端系統資源上傳下載功能的并發性測試。該種性能測試方法,無需使用復雜的性能測試工具,為系統的負載測試提供了新的思路和手段。
【關鍵詞】 云存儲視圖庫 自動化測試工具 并發性測試
一、背景
云存儲視圖庫系統是基于行業視頻監控業務需求,開發出的一款集視頻片段存儲、轉發、下載為一體的視圖庫云節點產品。它提供基于秒級精度的視頻隨機尋幀、快進、快退的視圖播放器,能夠支持原始視頻和智能分析后的視頻的播放。采用集群管理技術實現多個視圖庫云節點的自組網。致力于為用戶提供更優質的服務。系統具備高性能、高可靠、高開放性、易維護、易管理的特點。能夠廣泛應用于平安城市、交通監控、園區安防等的價值視頻片段的存取。
二、系統業務流程
云存儲視圖庫是一個由“中心控制服務器”、“文件控制服務器”以及流媒體文件點播服務器、視頻轉碼模塊以及客戶端共同組成的系統。為用戶提供視頻資源的上傳、下載、點播以及信息統計的功能,業務流程圖如下:
當 用戶進行文件上傳時,服務器會首先對文件的格式進行檢測,如果上傳的文件格式為圖片或其他文件,則直接進行存儲。當上傳的文件被檢測為視頻文件時,則先將視頻文件存儲到“文件緩存區”,調用視頻轉碼組件進行編碼與封裝格式轉換,然后再存儲到正式文件存儲區。用戶可以根據名稱、時間區間等條件對文件進行檢索,并對選取的文件進行下載或遠程視頻點播。視頻點播由用戶通過播放器客戶端向MainServer發起視頻點播請求,MainServer則調用媒體組件,得到流媒體點播組件返回的視頻流RTSP地址,然后流媒體點播組件會從文件存儲區讀取文件,將其打包成RTP視頻流并發送給播放器客戶端。當用戶上傳文件時,同時會為當前文件生成唯一的ID,當用戶取文件或進行視頻文件點播時,使用文件ID來作為標識。
三、系統并發性測試方法
針對本系統的資源上傳下載功能的負載測試,可采用自動化測試工具與資源監控工具相結合的測試方法,對系統資源上傳下載的并發情況進行實時監控。系統負載測試的流程如圖2所示:
1.在系統客戶端執行單個資源文件的上傳或下載操作,此時,上傳或下載的文件會生成唯一的ID。2.在數據庫中查詢出該資源對應的ID編號,并在應用服務端的資源監控器中觀察該編號是否在磁盤I/O中產生對應的PID進程。當并發執行文件的上傳下載操作時,在應用服務端的資源監控器中磁盤活動進程欄會對應生成多條PID。3.使用自動化測試工具(如按鍵精靈),編寫循環執行上傳或下載操作的腳本,并發執行多個大文件資源的上傳或下載操作。4.在應用服務端的資源監控器中監控各上傳下載操作對應PID進程的運行情況,包括監控系統資源的CPU使用率、磁盤I/O的讀寫情況以及網絡使用率等數據。
由于系統設計時,生成的PID號是根據操作請求順序增長的,因此,在系統并發測試時還可根據PID編號的順序,監控資源上傳下載操作是否有請求丟失的問題。如有請求丟失的情況,可查詢系統日志,排查請求丟失的原因。
當資源監控器中各項指標都達到負載值時,統計出PID進程總數即為單臺設備允許的并發數,以此確定系統的并發性能。
參 考 文 獻
[1] 張龍立.云存儲技術探討[J].電信科學,2010(S1).
[2]謝希仁. 計算機網絡(第五版)[M].北京:電子工業出版社,2008.
[3]唐凱,唐云韜等著.互聯網技術與應用 機械工業出版社,2006.
[4] 黃僑,葛世倫著. 開源Web自動化測試框架的改進 研究[J].科學技術與工程,2012.
[5]靳鴻著,測試系統設計原理與應用,電子工業出版社,2013.
[6]呂冰著,web編程與設計教程,河南大學出版社,201203.