消息队列和应用工具产品体系-微服务架构引发的问题

简介: 消息队列和应用工具产品体系-微服务架构引发的问题

开发者学习笔记【阿里云云原生助理工程师认证(ACA)课程:消息队列和应用工具产品体系-微服务架构引发的问题】

课程地址:https://edu.aliyun.com/course/3112075/lesson/19036


消息队列和应用工具产品体系-微服务架构引发的问题

 

内容介绍:
微服架构对系统的可用性带来的影响

一.快速迭代导致功能性测试周期大大缩短

二.较小的业务单元需要更强大的调用链路跟踪

 

一.快速迭代导致功能性测试周期大大缩短

服务架构倡导小团队、小服务,快速迭代开发的模式,在这种模式中,一个迭代周期平均时间只有几周甚至几天,这种情况下留给 QA 人员的测试时间也变得很,测试人员很难瀑布式开发流程中那样,执行单独完成完善的整体测试流程。
而如何在短时间内完成测试并保证质量,就对 QA 人员和整个开发模式提出了新的挑战。因此业界也对软件测试提出了很多新的思路,其中比较有代表性的是 Kent Beck 著作测试驱动开发,简称 TDD,就是下面图中的这本书。

image.png


TDD 最主要的思想就是在软件设计之初就开始进行测试用例的编写,开发人员提交的代码进行快速的验证,从而达到测试来驱动整个研发过程的。
图中的八个状态表示了 TDD 倡导测试在软件迭代中期中的八个阶段。首先在本次迭代的功能确定开始就开始编写测试例,然后通过测试用例来验证开发者每次提交的代码。开始时开发者提交的代码无法通过测试通过不停的迭代和修改,测试的通过率越来越高,直到全部通过测试接着开发者在对内部的流程进行重构,提高代码的运行效率,完善架构。
通过流程可以发现 TDD 思想在实践过程中,测试用的集合要不断的执行测试和验证工作,因此这就需要利用更加强大的自动化测试工具才能达到持续验证的目的

 

二.较小的业务单元需要更强大的调用链路跟踪

互联网业务的高速发展带来了业务逻辑的日趋复杂,越来越多的网站采用分布式部署架构,同时 Spring cloud double 等微服框架不断成熟,分布式架构已经成为互联网业务的主流软件架构。分布式的微服务架构在开发效率上具备先进,但是给传统的监控、运维、诊断技术带来了巨大挑战。

淘宝网的分布式架构微服实践过程来看,遇到的挑战主要有

1. 定位问题难,客服人员接到用户反馈后,会交给技术人员排查解决,而服务架构中,网站的请求通常要经过多个服务节才能返回结果一旦请求出现错误,通常要在多台机器上反复翻看日志才能步定问题。对简单问题的排查也常常涉及到多个团队的反复沟通,浪费大量的开发精力。
image.png

2. 发现瓶颈难,当用户反馈网站出现卡顿的现象,很难快速发现瓶颈在哪里,是用户终端到服务端的网络问题,还是服务端负载过高导致响应变慢,或是数据库压力过大,即使定位到了导致卡顿的环,也很难快速定位到代码层的根本原因

3. 架构梳理。在业务逻辑变得越来越复杂后,很难从代码梳理出应用依赖数据库、HTTPAPI、缓存等下游服务和资源,及外部调用。业务逻辑的梳理、架构的制度和容量的规划也变得更加困难。以双11促销活动的准备为例,成百上千的服务,每个服务能承受最大的并发是多少?需要为每个应用准备多少台机器,出现问题如何快速的定位?
这些信息通过传统的人工运维和人工观测的方法都很难获得准确数据,因此就需要通过新的应用工具进行诊断和跟踪。

相关文章
|
6月前
|
API 微服务
阿里云微服务引擎 MSE 及 API 网关 2025 年 9 月产品动态
阿里云微服务引擎 MSE 及 API 网关 2025 年 9 月产品动态。
590 56
|
7月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 9 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
563 142
|
7月前
|
Java API 开发工具
灵码产品演示:软件工程架构分析
本演示展示灵码对复杂软件项目的架构分析与文档生成能力。通过Qwen3模型,结合PlantUML,自动生成系统架构图、微服务时序图,并提取API接口文档,实现高效、智能的代码理解与文档输出。
396 5
运维 监控 数据可视化
332 1
API 微服务
175 0
|
7月前
|
消息中间件 Java Kafka
消息队列比较:Spring 微服务中的 Kafka 与 RabbitMQ
本文深入解析了 Kafka 和 RabbitMQ 两大主流消息队列在 Spring 微服务中的应用与对比。内容涵盖消息队列的基本原理、Kafka 与 RabbitMQ 的核心概念、各自优势及典型用例,并结合 Spring 生态的集成方式,帮助开发者根据实际需求选择合适的消息中间件,提升系统解耦、可扩展性与可靠性。
478 1
消息队列比较:Spring 微服务中的 Kafka 与 RabbitMQ
|
8月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 8 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
538 152
|
9月前
|
API
阿里云微服务引擎 MSE 及 API 网关 2025 年 7 月产品动态
阿里云微服务引擎 MSE 及 API 网关 2025 年 7 月产品动态
|
9月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 7 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
|
9月前
|
人工智能 自然语言处理 供应链
AI时代企业难以明确大模型价值,AI产品经理如何绘制一张‘看得懂、讲得通、落得下’的AI产品架构图解决这一问题?
本文产品专家系统阐述了AI产品经理如何绘制高效实用的AI产品架构图。从明确企业六大职能切入,通过三层架构设计实现技术到业务的精准转译。重点解析了各职能模块的AI应用场景、通用场景及核心底层能力,并强调建立"需求-反馈"闭环机制。AI产品专家三桥君为AI产品经理提供了将大模型能力转化为商业价值的系统方法论,助力企业实现AI技术的业务落地与价值最大化。
470 0