实际上线后,预发布环境通过内网向各台服务器拉取数据库实时备份文件、站点压缩文件,由于预发布环境的硬盘写入速度问题,目前带宽在350M/s的速度,主要瓶颈在于硬盘写入速度,传输时硬盘写入资源占用保持100%
一、背景
公司所在的业务为Saas系统开发,对线上稳定性、发布后的系统稳定性要求极高,目前由于环境不一致问题,每次发布通常都会发生在预发布环境没有问题,但发布到现网后,由于环境不同步的原因,导致BUG的发生,基于此情况,设计该系统提升测试的保障。
现网环境:
1、物理数据库系统主机2台,每台服务器有相同的数据库10多个。
2、有10多个不同功能的站点,分布在3台服务器上,其中两台是负载均衡(程序代码完全一致),另一台是下载专用的站点;
测试环境:
1、使用单台主机安装2个SQL SERVER实例,以及安装IIS和相关服务,模拟一个完整的测试环境
2、目前测试环境分为预发布环境(线上)1台、本地测试环境(线下)2台(用于多分支并行测试)
传输机制:
1、文件传输时,客户端每收一个文件片段,实时写入到本地文件,写入完毕后再发送命令向服务器请再继续发送下一个文件片段。因此硬盘写入速度,将影响传输速度。
二、设计图
三、实现结果
1、经过测试,本地局域网间模拟服务器、客户端执行一键还原,传输速度在98M左右(网卡限制),重复多次测试,稳定后部署到现网继续测试;
2、以现网服务器提供服务,4台服务器分别提供数据库还原、WEB站点还原服务,1台预发布,通过线上云内网执行一键还原,网卡传输速度在350M/s,期间预发布硬盘资源占用100%满负荷状态运行。经多次重复测试,以及持续运行测试,测试过程解决掉碰到的BUG和古怪的异常退出问题,目前持续运行正在测试,正常运行2天左右,需要继续观察稳定运行情况。