?
公共服務-新對接服務
性能測試
目錄
2.??????? 測試內(nèi)容及測試方法.... 4
2.2.2????? 評估測試和性能管理方案的規(guī)劃實施... 5
3.3????? 測試工具及監(jiān)控工具部署... 6
文件修訂歷史
修訂時間修訂概要? 作者
? 審核批準
2019-08-12新建謝文輝??
模板修訂歷史
? 版本
? 生效時間變更概要? 作者
? 審核批準
目錄
1.?????? 概述.................................................................... 5
1.1?????? 背景............................................................................ 5
1.2?????? 目標............................................................................ 5
1.3?????? 范圍............................................................................ 5
1.3.1???? 業(yè)務范圍...................................................................... 5
1.4?????? 術語和縮略語.................................................................... 5
2.?????? 測試內(nèi)容及測試方法........................................................ 6
2.1?????? 測試內(nèi)容........................................................................ 6
2.2?????? 測試策略........................................................................ 6
2.2.1???? 性能測試流程.................................................................. 6
2.2.3???? 評估測試和性能管理方案的規(guī)劃實施............................................... 8
2.3?????? 工作目標........................................................................ 8
3.?????? 測試環(huán)境................................................................ 8
3.1?????? 測試環(huán)境拓撲圖.................................................................. 8
3.2?????? 測試環(huán)境配置.................................................................... 9
3.3?????? 測試工具及監(jiān)控工具部署......................................................... 10
4.?????? 測試場景............................................................... 10
4.1?????? 基準測試場景................................................................... 11
4.2?????? 單交易場景..................................................................... 11
4.4?????? 疲勞測試場景................................................................... 12
5. ?? 性能測試報告
?Tep.bsp???????????????????????????????????????????????????????????????????????????????? 11
?Tep.gis???????????????????????????????????????????????????????????????????????????????? 11
6.?????? 附錄................................................................... 23?
[if !supportLists]1.????????[endif]概述
本文檔為公共服務-新對接服務系統(tǒng)性能測試方案蜂厅,其內(nèi)容用于描述本次性能測試服務的實施方案蚕冬,以及測試項目組織實施的技術規(guī)范。
本文檔中描述的內(nèi)容办陷,旨在
[if !supportLists]?? [endif]為新對接系統(tǒng)的性能狀態(tài)進行客觀評估说搅,提供性能數(shù)據(jù)炸枣;
[if !supportLists]?? [endif]為性能測試工作規(guī)定有效、完整的實施方案弄唧;
[if !supportLists]?? [endif]為性能測試工作規(guī)定具體的任務适肠、角色分工、進度計劃上的安排候引;
[if !supportLists]1.1 [endif]背景
滿足新對接服務的年度計劃戰(zhàn)略侯养,根據(jù)各對接接口調(diào)用頻率,雙十一應對高并發(fā)事物處理能力澄干,對其進行性能測試逛揩,分析瓶頸進行調(diào)優(yōu),以應對滿足線上生產(chǎn)麸俘。
[if !supportLists]1.2 [endif]預期目標
預期目標事物數(shù)根據(jù)2/8原則計算辩稽,即80%的數(shù)據(jù)產(chǎn)生在20%的時間里。
Bsp下單以期望雙十一一天10小時產(chǎn)生500W事物量从媚,其中400W會集中在2個小時內(nèi)產(chǎn)生逞泄,即需要達到555tps/s,成功率需為100%静檬;
Gis地址解析目前線上數(shù)據(jù)為70W算炭懊,需要達到目前的3倍也就是210W/天,其中170W會在2小時內(nèi)產(chǎn)生拂檩,預期性能指標為237tps/s,成功率為100%嘲碧;
響應時間為1.5s稻励,程序沒有大的性能漏洞;
系統(tǒng)性能能夠滿足基本線上要求
[if !supportLists]1.3 [endif]范圍
[if !supportLists]1.3.1????????[endif]業(yè)務范圍
Gis愈涩、Bsp望抽、message
[if !supportLists]1.4 [endif]術語和縮略語
術語/縮略詞說明
TPS每秒事務數(shù),指服務器在單位時間內(nèi)(秒)可以處理的事務數(shù)量履婉,一般以request/second為單位煤篙;
QPS每秒查詢率,指服務器在單位時間內(nèi)(秒)處理的查詢請求速率毁腿;
連接池是一個進程辑奈,多個連接在一個進程中存儲苛茂、管理,它是共享鸠窗、可復用的妓羊;
思考時間思考時間,在性能測試中稍计,模擬用戶的真實操作場景躁绸。用戶操作的事務與事務之間是有一定間隔的,引入這個概念是為了并發(fā)測試(有交叉業(yè)務場景)時臣嚣,業(yè)務場景比率更符合真實業(yè)務場景净刮;
[if !supportLists]2.? [endif]測試內(nèi)容及測試方法
此次壓力測試實施是對中臺系統(tǒng)性能進行測試評估的過程,我們將依據(jù)原公共服務系統(tǒng)的實際運行現(xiàn)狀硅则,抽取對系統(tǒng)性能產(chǎn)生較大影響的業(yè)務交易庭瑰,模擬最終用戶的操作行為,構(gòu)建一個與生產(chǎn)實際相近的壓力仿真模型(場景)抢埋,對系統(tǒng)實施壓力測試弹灭,以此評判系統(tǒng)的整體性能的實際性能表現(xiàn)。
[if !supportLists]2.1 [endif]測試內(nèi)容
根據(jù)與相關人員的溝通和交流揪垄,此期工程上線的目標和期限穷吮,通過對現(xiàn)有系統(tǒng)運行數(shù)據(jù)的統(tǒng)計,結(jié)合系統(tǒng)的設計目標和業(yè)務特點饥努,遵循著發(fā)生頻率高捡鱼、對系統(tǒng)或數(shù)據(jù)庫性能影響大、關鍵和核心業(yè)務等原則酷愧,本期測試內(nèi)容重點為模擬真實場景通過網(wǎng)關請求bsp模塊及級別的gis查詢解析功能驾诈。
[if !supportLists]2.2 [endif]測試策略
??????????? 測試依賴:因?qū)咏涌诙颊{(diào)用于第三方,因此使用python編寫Mock Server作為擋板溶浴,模擬真實場景乍迄,mock中配置響應時間為1.2s – 2s 之間;采用分布式集群 把請求輪詢的方式分發(fā)mock 壓力士败;
?????????????????? 測試工具:采用業(yè)界成熟的自動化性能測試工具JmeTer 5.1闯两,采用jmeter分布式,windows機器為master啟動測試腳本谅将,收集測試數(shù)據(jù)漾狼,linux機器為salva機;
??????????? 測試依據(jù):通過創(chuàng)建壓力測試程序饥臂、構(gòu)建壓力測試模型逊躁,對被測試系統(tǒng)實施壓力測試,最后形成壓力測試結(jié)果分析報告隅熙。
[if !supportLists]2.2.1???[endif]性能測試流程
通過自動化測試工具模擬最終用戶向服務器發(fā)起業(yè)務請求稽煤,進行性能測試核芽。通過測試工具對測試過程中系統(tǒng)各點進行監(jiān)控,每一次測試結(jié)束后工具自動生成結(jié)果報告供分析使用念脯。
[if !vml]
[endif]
[if !supportLists]2.2.2???[endif]評估測試和性能管理方案的規(guī)劃實施
[if !supportLists]q?[endif]測試用例的建立
?? 在性能評估的規(guī)劃階段狞洋,通過把以文檔形式所指定的關鍵業(yè)務轉(zhuǎn)化為實際可實施的測試用例,同時分配所采集的業(yè)務數(shù)據(jù)绿店。
[if !supportLists]q?[endif]測試場景的設置
把關鍵業(yè)務的分布轉(zhuǎn)化為評估測試的具體實施設置吉懊。
[if !supportLists]q?[endif]環(huán)境配置和系統(tǒng)就緒
?? 在實施的開始之前,有必要保證被測應用系統(tǒng)是可用和經(jīng)歷了功能和穩(wěn)定性測試的假勿,同時功能支持必須貫穿在整個可能影響測試實施的過程借嗽。
[if !supportLists]q?[endif]測試實施和性能監(jiān)控
?? 按指定的流程事實評估測試,并根據(jù)關鍵業(yè)務對整個應用系統(tǒng)的影響和已有的性能參照點转培,在評估測試當時進行實時的性能監(jiān)控恶导。
[if !supportLists]q?[endif]實時預警和被測試系統(tǒng)的避險
?? 針對在線系統(tǒng)的特定,在對被測試系統(tǒng)實施評估時必須有嚴格的實時預警和保護的自動控制浸须,一旦被測試應用有異常的趨勢和可能惨寿,必須有及時的避險機制。
[if !supportLists]2.3 [endif]工作目標
[if !supportLists]?? [endif]構(gòu)建與預期環(huán)境相匹配的基礎數(shù)據(jù)環(huán)境
[if !supportLists]?? [endif]根據(jù)系統(tǒng)性能需求設計性能測試方案删窒,定義業(yè)務模型及測試場景
[if !supportLists]?? [endif]執(zhí)行性能測試裂垦,獲取參測系統(tǒng)的各項性能指標
[if !supportLists]?? [endif]對比各參測系統(tǒng)的性能指標,制作綜合評測報告肌索,為評測系統(tǒng)性能及性能優(yōu)化提供參考依據(jù)蕉拢。
[if !supportLists]?? [endif]檢驗系統(tǒng)上線前,程序是否有大的并發(fā)漏洞诚亚,和性能瓶頸
[if !supportLists]3.? [endif]測試環(huán)境
[if !supportLists]3.1 [endif]測試環(huán)境拓撲圖
[if !supportLists]3.2 [endif]測試環(huán)境配置
單機為4個核晕换,4G內(nèi)存,兩個服務共配置四臺機器站宗,每一單機都配置core 和 gaway兩個服務闸准;
[if !supportLists]3.3 [endif]測試工具及監(jiān)控工具部署
?????????????????? 測試工具:采用業(yè)界成熟的自動化性能測試工具JmeTer 5.1,采用jmeter分布式份乒,windows機器為master啟動測試腳本恕汇,收集測試數(shù)據(jù),linux機器為salva機或辖;
服務器監(jiān)控:服務器監(jiān)控采用Jmeter監(jiān)控插件ServerAgent,結(jié)合PerfMon Metrics Collector 達到監(jiān)控數(shù)據(jù)收集枣接,數(shù)據(jù)可視化的效果颂暇;
[if !supportLists]4.? [endif]測試場景
分析新對接服務系統(tǒng)上線后所面臨的性能壓力的來源和類別,并且通過分析歷史交易數(shù)據(jù)來確定各種性能在整個系統(tǒng)壓力所占比例但惶。例如確定前臺應用子系統(tǒng)的業(yè)務類別和并發(fā)比例耳鸯,后臺自動批處理的數(shù)據(jù)數(shù)量和類別等湿蛔。最終目的是建立一個能夠逼真模擬公共服務系統(tǒng)實際運行場景的業(yè)務模型。選擇如下交易類型:
根據(jù)各對接模塊县爬,對接口的請求數(shù)阳啥,預期目標數(shù),進行劃分模型财喳;
[if !supportLists]4.1 [endif]基準測試場景
基準測試場景用來驗證系統(tǒng)功能完整性和可用性察迟,以及測試腳本的可重復性:
[if !supportLists]4.2 [endif]單交易場景
單交易測試場景主要是為了檢驗各功能模塊是否有嚴重的性能障礙,以及檢驗各自交易單獨的性能處理能力的最大值:
[if !supportLists]4.3 [endif]疲勞測試場景
采用選擇并發(fā)用戶數(shù)耳高,持續(xù)執(zhí)行X時長
[if !supportLists]5.? [endif]性能測試報告
本次性能測試中扎瓶,所測接口在響應時間上都符合預期,在1.5內(nèi)完成響應泌枪;
bsp下單接口概荷,單appId當并發(fā)數(shù)達到750線程,持續(xù)請求時間為60s時碌燕,響應時間為1.2s误证,TPS達到 650tps/s,錯誤率為0%修壕;
bsp下單接口愈捅,多appId當線程數(shù)達到1000,持續(xù)請求時間為60s時叠殷,響應時間為1.7s改鲫,TPS為530tps/s,錯誤率為0%林束;
bsp下單接口像棘,單appId線程數(shù)為700線程宙橱,持續(xù)請求時間為21分鐘搀菩,響應時間為1.3s,持續(xù)時間里總請求數(shù)為759822 個請求樣本而咆,TPS為 609每秒胖腾,錯誤率為0%烟零;
gis 地址解析接口,并發(fā)線程數(shù)達到 750咸作,持續(xù)請求60s锨阿,響應時間為1.3s,錯誤率為0%记罚;
所以墅诡,測試結(jié)果為公共服務-新對接服務系統(tǒng)是滿足預期性能指標;
Tep:bsp模塊
[if !vml]
[endif]
[if !vml]
[endif]?[if !vml]
[endif]
Tep:gis模塊
[if !vml]
[endif]
[if !vml]
[endif]
[if !supportLists]6.? [endif]附錄
無