如何搭建微服务架构的质量体系

本文主要谈如何构建微服务的质量体系。在这之前,大家先简单了解下几个问题:

1.为什么用微服务

单体应用就是将应用程序的所有功能都打包成一个独立的单元,最终以一个WAR包或JAR包存在,里面包含DAO,Service、UI等所有的逻辑。不幸的是,这种简单的单元有很大的局限性。应用程序随着业务需求的迭代,功能的追加扩展,最终成为一个庞然大物。

复杂性高:业务规模和团队规模发展的一定阶段,模块耦合严重,代码难以理解,质量变差 交付效率低:构建和部署耗时长,难以定位问题,开发效率低,全量部署耗时长、影响范围广、风险大,发布频次低 伸缩性(scalable)差:单体只能按整体横向扩展,无法分模块垂直扩展 可靠性差:一个bug有可能引起整个应用的崩溃 阻碍技术创新:受技术栈限制,团队成员使用同一框架和语言

2.什么是微服务

微服务架构:将单体应用拆分为多个高内聚低耦合的小型服务,每个小服务运行在独立进程,由不同的团队开发和维护,服务间采用轻量级通信机制,独立自动部署,可以采用不同的语言及存储。微服务的优点:

易于开发与维护:微服务相对小,易于理解 独立部署:一个微服务的修改不需要协调其它服务 伸缩性强:每个服务都可按硬件资源的需求进行独立扩容 与组织结构相匹配:微服务架构可以更好将架构和组织相匹配,每个团队独立负责某些服务,获得更高的生产力 技术异构性:使用最适合该服务的技术,降低尝试新技术的成本 微服务的介绍有很多,可以参考:zhuanlan.zhihu.com/p/...

3.微服务带来的质量挑战

系统依赖性增加:将单体应用转成微服务,虽然增加了缩放能力和灵活性,但是引入了更多的依赖,使系统整体变的更复杂,使测试环境的搭建配置以及校验指标更加难以掌控。 并行开发障碍:系统依赖性的增加还会给微服务的并行开发工作造成影响,需要等待其他微服务测试环境部署完毕,才能实现集成、测试。微服务数量越多,需要考虑的对象就越是广泛 影响传统测试方法:传统测试方法往往通过UI测试进行验证,而微服务的测试方案更加复杂。不仅需要验证各独立微服务,还需要检查整体业务的执行路径

4.质量体系如何搭建

4.1下面是比较通用的微服务架构下质量保障体系图 更多请参考:runtester.com/detail/blog…

转载于:https://juejin.im/post/5cc2b4185188250a6b183e90

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值