测试环境路由可以这么做(七):研发提效的好帮手

92 阅读6分钟

两周前面试过一家公司,属于事业单位,朝9晚5,下午5点大家准时坐班车回家。真是羡煞旁人啊!!!

面试过程中,面试官明确表达,尽量不要加班,以免带坏风气。原因嘛,大家都懂的。

但在不增加人手、不减需求的情况下,又要按时交付,鱼与熊掌兼得,其实是很难的。

因此提升研发效率是一个必然的要求!!!

有两个方向,一是提升研发人员的个人技能,二是打造更好的工具赋能给研发、QA、运维等相关技术人员。 要求别人提高,要考虑很多因素,有太多不可控,而且周期也较长。但工具的打造却可以在短期内达到立竿见影的效果!!!

因此,提效的首要任务是打造好的工具!!!而在开发、测试环节,一个稳定、易用的服务运行环境是非常重要的,对研发效率、研发质量起着非常重要的作用。

没有测试环境路由系统,存在着一系列的问题,举例如下:

图片

我们对测试环境路由价值内部做了调研、量化:

对比维度环境路由之前环境路由
环境创建速度周级别,两周以上分钟级
资源节约每套环境涉及80+服务、10+中间件,需要全套部署,资源持续占用资源复用,仅需部署需求变动涉及的服务;用完回收资源
环境数量限于环境创建速度及资源,现仅有三套开发环境+两套测试环境,对于大量的并行需求远远不够理论上无限
构建次数在服务器上构建,平均一次4分钟;改动一次,需提交构建一次基本上是本地启动,仅有少量构建次数
问题定位效率小时级;涉及多人一起定位分钟级;可个人独立定位
调试效率debug时,造成整体业务流程阻塞流量劫持到本地环境,无阻塞
环境稳定性固定分支模型,不同的需求代码合并在一起,冲突严重,环境不稳定,以业务需求为单位的分支模型,环境隔离,无冲突,环境稳定
开发、测试环境一致性物理隔离,开发、测试各自使用自己的环境,环境相关的数据及配置需要做两遍,并且要手动更新到另外三套环境以业务需求为维度,开发、测试共用一套虚拟环境,数据准备仅需一次;上线后自动维护基础环境

提升40%的开发效率:从saas2.0的研发周期来看,代码开发一周、联调一周、测试一周,总体提升40%是没有问题的。不包括前期的需求分析、技术评审、架构设计等阶段

节省服务器资源:5套环境,28个节点,平均一套环境6个节点(4 cpu、16G内存),包括数据库等独立资源

网上测试环境路由相关文章挺多的,有理论有效果,但可惜那是人家的,没有任何实现,因此只能远观而不能近玩唉!!!

通过以下系列文章,大家可以对原理和实现方案有个大体了解,有了基本的思路和demo,结合自己公司的实际情况,实现一套符合自己场景的测试环境路由也就不难了!!!

希望可以通过这几篇文章,你也可以打造出属于自己的测试环境路由系统,从此减少加班的时间,过上朝九晚五的幸福生活!!!

测试环境路由可以这么做(一)

测试环境路由可以这么做(二):多级测试环境路由算法,值得拥有

测试环境路由可以这么做(三):特性环境标识注入

测试环境路由可以这么做(四):K8S Ingress入口层增强

测试环境路由可以这么做(五):Dubbo增强

测试环境路由可以这么做(六):RocketMQ增强

如果你觉得这篇文章对你有帮助,请不要吝惜你的“关注”、“点赞”、“评价”,我们可以进一步讨论实现方案和细节。你的支持永远是我前进的动力~~~