数据库模型编程(案例分享数据库一键跨中心仿真测试)
数据库模型编程(案例分享数据库一键跨中心仿真测试)2)流量怎么自动从生产到准生产演练环境1)怎进行跨中心、跨网络控制高仿测试3、测试报告需要手动编写,很多数据都有自行查找。为解决客户痛点、提高测试的效率,一键高仿就孕育而生。一次高仿测试涉及到多中心、多系统协同工作,且测试是在高仿环境下进行的,与生产环境是隔离的;流量的获取、数据库的恢复也需要开通专门的网络才可以进行。如此实现一键高仿主要的困难点如下:
1. 概述1.1. 背景介绍每年在重大促销前(比如“双十一”)银行都会对网银、手机相关的数据库进行压力测试保障促销期间数据库正常运行,然而每一个的数据库的压力测试都是耗时耗力,需要手动从备份中心获取备份文件进行数据库的恢复,从生产抓包环境获取生产流量,而且测试完成后的测试报告也是手动编写,过程中造成人力很大的浪费,对人员的技能要求也要很高,不仅如此,每一次的测试都要进入ECC机房进行操作,增加了ecc机房管理和资源消耗,也多了一份安全风险。
目前进行一次高仿压力测试需要一个人至少7天的测试,面对大量的数据库测试,投入的人力是非常大的,实现一键化高仿测试也是迫在眉睫。
1.2. 客户痛点1、需要高仿测试数据库太多,特别是“双十一”相关的数据库,而测试一人测试一个库需要7天。
2、高仿测试每次都要去ECC进行操作,与“不进或少进ECC”的管理冲突。
3、测试报告需要手动编写,很多数据都有自行查找。
2. 解决方案为解决客户痛点、提高测试的效率,一键高仿就孕育而生。
2.1. 实现一键高仿的难点是什么一次高仿测试涉及到多中心、多系统协同工作,且测试是在高仿环境下进行的,与生产环境是隔离的;流量的获取、数据库的恢复也需要开通专门的网络才可以进行。如此实现一键高仿主要的困难点如下:
1)怎进行跨中心、跨网络控制高仿测试
2)流量怎么自动从生产到准生产演练环境
3)怎么进行全流程的操作控制
4)怎么实现办公网操作控制
5)怎么实现规模化弹性部署
2.2. “总分”架构总控服务部署在生产环境,开通方案高仿环境的分控服务的访问权限,这样总控可以对抓包的分控和高仿测试的分控进行控制
部署架构图
采用网络存储进行流量包的传输,该网络存储再高仿环境和生产环境都可以访问,生产流量可以自动传到该网络存储,高仿测试便可以自动下载,完成生产的流量传输。
2.4. 数据库备份恢复,跨中心协同采用统一的备份存储中心,生产数据统一定点进行备份到该备份中心,高仿演练环境可使用该中心的备份文件进行数据库高仿回复,全过程同个分控服务进行控制并上报给总控。
2.5. 高仿演练,办公环境操作高仿演练环境在网络上和办公网隔离,不能直接在办公环境操作并且演练环境下的数据为生产数据杜绝访问,一键高仿使用网络代理使得再办公环境可访问总控的WEB服务,该WEB只提供流程的控制,不涉及敏感数据。
2.6. 弹性化部署随着数据库的高仿测试任务越来越多,需要更快速完成测试部署,更简单的进行测试,更敏捷切换测任务,一键高仿采用多系统协同作业,可快速获取测试所需的生产流量,控制所有测试流程,自动选择回放的服务器和数据库服务器;且界面操作简单,只需配置数据库相关信息,所有流程由后台完成,并且界面提供流程状态和进度。
3. 效果收益投入使用一键高仿达到以下的收益:
1)节约90%的人力投入
实现一键高仿,只需DBA或其他需求高仿测试人员再WEB界面输入测试的相关数据就可以实现一键化进行测试,等待测试完成后就能查看的测试报告,全过程并不需要人力干预,减少了专门的测试人员。
2)人力技能要求降低
未使用一键高仿时,测试人员需要对抓包、ftp、数据库恢复和高仿系统的操作技能,而实现高仿后,这些过程都实现了自动化,对于这些技能也就不需要了。
3)全年测试数据库数据提升
实现一键高仿,只要高仿环境的服务器够用,想测试多少库就能测试多少,并不需要投入而外的人力。
4)实现0次进入ECC机房
实现一键高仿,只需再办公网操作,无需进入ECC机房进行操作。
5)测试更灵活
实现一键高仿,不管是压测、升级或者故障重现都能随时进行。
本案例来自深圳沃信科技有限公司-技术支持部。
首页