云原生APM在微服务架构中的实践案例有哪些

Lei

April 25, 2025

技术探讨

云原生APM在微服务架构中的实践案例有哪些

一、腾讯云微服务观测平台(TSW)

背景:

腾讯智慧零售部面临着多账号公有云、自研云、内网k8s等复杂环境,多个部署平台(TAF、TKE、TKEX)带来了巨大的管理挑战。在线服务异常无法快速定位,缺乏统一的web管理界面和服务性能诊断工具,这些问题严重影响了业务的正常运行。

解决方案:

为了解决这些问题,腾讯选择了SkyWalking作为微服务的监控工具,并基于此构建了腾讯云微服务观测平台(TSW)。TSW的架构主要包含三个部分:上报端Client、数据接收端Collector和web展示UI。核心原理包括使用Java Agent探针技术进行JVM与行为数据采集,内部使用HTTP和gRPC协议进行通信,使用GraphQL和HTTP进行UI展示,并支持H2和Elasticsearch存储。

实施过程:

1. 服务上报:腾讯有数的后台服务使用Spring Boot技术栈,为了降低开发成本,他们使用SkyWalking的Agent进行数据上报。通过修改启动命令,添加-javaagent参数来指定Agent的绝对路径,如:

bash

$ java -javaagent:/e/apache-skywalking-apm-bin/agent/skywalking-agent.jar -Dspring.profiles.active=dev -jar target/youshu-app.jar

这样,服务在启动时就会自动向TSW上报数据。

2. 数据处理:数据上报到Server端时,首先会由Pulsar Function(消息队列)削峰填谷。对不同开源客户端上报的数据,Adapter适配器会将数据转换为统一的Opentracing兼容格式,以供后续使用。统一数据格式后,链路数据会被直接存储,同时会根据数据的使用场景,分配给实时计算算子与离线计算算子。实时计算算子为用户提供实时监控、统计数据展示,并对接告警平台快速响应。离线计算算子处理长时段大量数据的统计汇聚,利用大数据分析能力提供业务价值。

3. 存储:TSW的存储层设计可满足不同数据类型的使用场景,适配Server层的写入与Data Usage层的查询与读取请求,同时存储层增加了HBase和HDFS的存储方式。

4. 数据使用:TSW提供腾讯云统一的控制台操作、数据展示和告警功能。通过可视化的UI,用户可以查看服务的调用关系拓扑图和调用链路Trace,快速了解服务的运行状态和性能瓶颈。

成果:

通过TSW,腾讯实现了对微服务的全链路性能监测,能够快速定位和解决服务异常。借助腾讯云的能力,由专业团队负责SkyWalking的日常运营,大大降低了运维成本,提高了开发效率。

二、基调听云与DaoCloud合作的云原生智能可观测性平台

背景:

企业用云从单一云时代逐渐过渡到混合多云时代,多云环境中各种模块和服务数量剧增,如何实现全链路追踪、故障定位和性能优化成为亟待解决的问题。

解决方案:

基调听云与DaoCloud合作,推出了云原生智能可观测性平台。该平台以DaoCloud Enterprise云操作系统为底座,结合基调听云智能可观测性平台,提供了云原生计算、网络和存储能力。平台具有全量的数据采集、全链路数据事务追踪、代码级根源分析、调用链日志溯源、健康度和智能告警能力,全面覆盖了最终用户体验、应用性能、业务性能、基础架构和云平台等客户IT环境。

实施过程:

1. 数据采集与传输:通过在应用程序中嵌入探针,平台能够采集到详细的性能数据,包括服务响应时间、吞吐量、错误率等。采集到的数据通过高效的传输机制发送到平台进行分析。

2. 全链路追踪:平台利用调用链技术,将业务监控、应用监控、日志监控、Kubernetes平台监控和容器监控等有机地关联在一起,实现端到端的一体化监控。通过可视化的拓扑图,展示服务间的依赖关系和调用链路,帮助运维团队快速定位问题。

3. 智能告警:平台内置智能告警系统,能够根据预定义的规则自动检测异常并触发告警。告警信息可以通过多种渠道(如邮件、短信、即时通讯工具等)发送给相关人员,确保问题能够及时得到处理。

4. 性能优化:通过对采集到的数据进行深度分析,平台能够识别性能瓶颈并提供优化建议。例如,通过分析调用链找出响应时间较长的服务,针对性地进行优化。

成果:

云原生智能可观测性平台帮助企业显著提升了在复杂多云环境下的应用性能和可靠性。通过全链路追踪和智能告警,企业能够快速响应并解决问题,减少故障对业务的影响。平台的性能优化建议帮助企业提高了系统的整体效率,降低了运营成本。

三、Netflix的微服务架构转型

背景:

Netflix是一家领先的流媒体服务提供商,随着用户数量的增加和业务的扩展,其传统的单体架构面临着诸多挑战,如部署速度慢、可扩展性差和维护成本高等。

解决方案:

Netflix决定采用微服务架构来重构其应用系统。通过将大型单体应用分解为多个小型、独立的服务,每个服务负责特定的业务功能,服务间通过轻量级的通信机制(如RESTful API)进行交互。这种架构使得Netflix能够快速迭代和部署新功能,提高系统的可扩展性和容错性。

实施过程:

1. 架构拆分:Netflix将其应用系统按照业务功能垂直拆分,形成多个微服务。每个微服务拥有自己的数据库和业务逻辑,相互之间通过API进行通信。这种拆分方式提高了系统的灵活性和可维护性。

2. 服务治理:为了有效管理大量的微服务,Netflix引入了服务发现和注册机制,使用Eureka作为服务注册中心。服务实例在启动时向Eureka注册自己的信息,其他服务通过Eureka查找并调用所需的服务。Netflix还采用了Ribbon进行客户端负载均衡,确保服务的高可用性。

3. API网关:Netflix使用Zuul作为API网关,负责处理所有外部请求。Zuul实现了请求的路由、过滤和安全校验等功能,对外提供统一的API接口,隐藏内部服务的实现细节,提高了系统的安全性和可管理性。

4. 配置管理:Netflix使用Archaius进行分布式配置管理,实现了配置信息的集中管理和动态更新。通过这种方式,Netflix能够在不重启服务的情况下更新配置,提高了系统的灵活性和运维效率。

成果:

通过微服务架构的转型,Netflix实现了快速部署和迭代新功能,大大提高了系统的可扩展性和容错性。这种架构使Netflix能够更好地应对不断增长的用户需求和业务复杂性,提升了用户体验。

四、Amazon的微服务架构实践

背景:

Amazon作为全球最大的电子商务平台之一,面临着巨大的流量和复杂的业务需求。其传统的单体架构难以满足高并发和快速变化的业务要求,因此需要一种更加灵活和可扩展的架构。

解决方案:

Amazon逐步采用微服务架构来构建其电子商务平台。通过将大型应用分解为多个小型服务,每个服务独立开发、部署和扩展,服务间通过轻量级通信机制进行交互。这种架构使Amazon能够快速响应市场变化,提高系统的可扩展性和容错性。

实施过程:

1. 架构拆分:Amazon按照业务功能将其电子商务平台垂直拆分为多个微服务,如用户管理、商品管理、订单管理等。每个微服务拥有自己的数据库和业务逻辑,相互之间通过API进行通信。这种拆分方式提高了系统的灵活性和可维护性。

2. 服务治理:Amazon使用AWS Cloud Map作为服务注册中心,服务实例在启动时向Cloud Map注册自己的信息,其他服务通过Cloud Map查找并调用所需的服务。Amazon还采用了AWS Elastic Load Balancing进行负载均衡,确保服务的高可用性。

3. API网关:Amazon使用Amazon API Gateway作为API网关,负责处理所有外部请求。API Gateway实现了请求的路由、过滤和安全校验等功能,对外提供统一的API接口,隐藏内部服务的实现细节,提高了系统的安全性和可管理性。

4. 配置管理:Amazon使用AWS Systems Manager Parameter Store进行分布式配置管理,实现了配置信息的集中管理和动态更新。通过这种方式,Amazon能够在不重启服务的情况下更新配置,提高了系统的灵活性和运维效率。

成果:

通过微服务架构的转型,Amazon实现了系统的快速扩展和高可用性,能够轻松应对购物高峰期的高流量。这种架构使Amazon能够快速响应市场变化,提升了用户体验和运营效率。

五、Uber的微服务架构演进

背景:

Uber作为全球领先的交通服务平台,业务的快速增长和复杂的运营环境使其传统的单体架构面临巨大挑战。为了支持全球范围内的业务扩展和高并发需求,Uber需要一种更加灵活和可扩展的架构。

解决方案:

Uber决定采用微服务架构来重构其应用系统。通过将大型单体应用分解为多个小型、独立的服务,每个服务负责特定的业务功能,服务间通过轻量级的通信机制(如RESTful API)进行交互。这种架构使得Uber能够快速迭代和部署新功能,提高系统的可扩展性和容错性。

实施过程:

1. 架构拆分:Uber将其应用系统按照业务功能垂直拆分,形成多个微服务,如用户管理、行程管理、支付管理等。每个微服务拥有自己的数据库和业务逻辑,相互之间通过API进行通信。这种拆分方式提高了系统的灵活性和可维护性。

2. 服务治理:为了有效管理大量的微服务,Uber引入了服务发现和注册机制,使用Consul作为服务注册中心。服务实例在启动时向Consul注册自己的信息,其他服务通过Consul查找并调用所需的服务。Uber还采用了Fabio进行客户端负载均衡,确保服务的高可用性。

3. API网关:Uber使用Envoy作为API网关,负责处理所有外部请求。Envoy实现了请求的路由、过滤和安全校验等功能,对外提供统一的API接口,隐藏内部服务的实现细节,提高了系统的安全性和可管理性。

4. 配置管理:Uber使用etcd进行分布式配置管理,实现了配置信息的集中管理和动态更新。通过这种方式,Uber能够在不重启服务的情况下更新配置,提高了系统的灵活性和运维效率。

成果:

通过微服务架构的转型,Uber实现了全球范围内的快速扩展和高可用性,能够轻松应对交通高峰期的高流量。这种架构使Uber能够快速响应市场变化,提升了用户体验和运营效率。

云原生APM在微服务架构中的实践案例涵盖了多个行业的领先企业,包括互联网、电子商务、流媒体和交通服务等。这些案例展示了云原生APM如何帮助企业应对复杂的分布式系统管理挑战,提升系统的可观察性、性能和可靠性。通过实施云原生APM,企业能够实现快速故障定位、性能优化和持续改进,从而在激烈的市场竞争中取得优势。

Related Posts

运动战:AI 时代 IT 运维的决胜之道——DeepFlow 业务全链路可观测性的落地实践

当真实的系统故障来临时,告警此起彼伏,由于全线布防,各个系统都在疯狂报警。工程师手忙脚乱,真正的故障究竟发生在哪里,反而更难判断。那位朋友期望的"AI 处理海量告警",真到了关键时刻却变成了这样:一次核心交易系统故障,系统瞬间喷涌出数千条告警,AI 分析平台面对海量噪音反而不知道什么是重点,运维团队花了两个多小时才从层层迷雾中手工找到问题点。

Read More

云网监控平台如何实现与第三方服务的整合

Lei

April 29, 2025

技术探讨

随着信息技术的飞速发展,云网监控平台在企业网络管理中的重要性日益凸显。为了进一步提升其功能和适用性,云网监控平台与第三方服务的整合成为了一个关键的发展方向。这种整合不仅能够拓展云网监控平台的功能边界,还能为企业提供更全面、高效的网络管理解决方案。 一、接口对接的关键要素 云网监控平台与第三方服务整合的第一步是接口对接。在这个过程中,数据格式的统一是至关重要的。不同的第三方服务可能采用不同的数据格式,例如JSON或者XML。云网监控平台需要能够识别并转换这些格式,以便顺利地接收和处理数据。例如,在与某知名网络安全服务的整合中,该平台开发了专门的数据格式转换模块,成功将其原本复杂的XML格式数据转换为内部统一使用的JSON格式,从而实现了数据的有效对接。 接口的稳定性也是不可忽视的。一个不稳定的接口可能会导致数据传输中断或者错误。云网监控平台在与第三方服务进行接口对接时,需要进行严格的测试。比如,采用压力测试来模拟高并发的情况,确保接口在大量数据传输时依然能够稳定工作。在与一家大型数据存储服务的整合中,通过多轮压力测试,及时发现并修复了接口的性能瓶颈,保证了整合后的服务稳定运行。 二、数据共享与安全机制 数据共享是云网监控平台与第三方服务整合的核心内容之一。一方面,要明确共享数据的范围。云网监控平台需要根据自身的需求和第三方服务的功能,确定哪些数据可以共享。例如,在与一家网络性能分析服务整合时,平台仅共享网络流量和延迟等相关数据,避免了不必要的数据暴露。 数据安全机制的建立是保障整合成功的关键。加密技术是常用的数据安全手段。云网监控平台和第三方服务之间传输的数据应该进行加密处理,防止数据在传输过程中被窃取或者篡改。有研究表明,采用AES加密算法可以有效地提高数据传输的安全性。访问控制也不可或缺。只有经过授权的用户和服务才能访问共享数据,通过设置严格的用户权限和认证机制,确保数据安全。 三、功能互补与协同工作 云网监控平台与第三方服务整合的目的之一是实现功能互补。例如,云网监控平台可能在基础网络指标监控方面表现出色,但在特定应用的性能分析上存在不足。而一些第三方服务专注于特定应用的性能优化。通过整合,两者可以相互补充。以电商平台的网络管理为例,云网监控平台与专注于电商应用性能的第三方服务整合后,能够同时监控网络的基础指标和电商应用的响应时间、交易成功率等关键指标,提升了整体的监控效果。 协同工作是功能互补的延伸。在整合过程中,需要建立有效的协同工作机制。这包括任务分配和协调机制。比如,当发现网络故障时,云网监控平台和第三方服务需要明确各自的职责,是由平台负责基础网络的排查,还是由第三方服务针对特定应用进行问题诊断。通过合理的任务分配,可以提高故障排除的效率。 云网监控平台与第三方服务的整合涉及接口对接、数据共享与安全、功能互补与协同工作等多个方面。接口对接要注重数据格式和接口稳定性;数据共享需明确范围并建立安全机制;功能互补和协同工作能提升整体监控效果。这种整合有助于云网监控平台功能的拓展,为企业提供更优质的网络管理服务。未来,可以进一步研究如何在更复杂的网络环境下优化整合过程,以及如何提升整合后的服务智能化水平。

Read More