来电科技微服务治理落地实践|学习笔记(一)

简介: 快速学习来电科技微服务治理落地实践

开发者学堂课程【来电科技微服务治理落地实践来电科技微服务治理落地实践】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/977/detail/14898


来电科技微服务治理落地实践

 

内容介绍:

一、云原生微服务的挑战和趋势

二、来电科技微服务治理落地挑战

三、来电科技微服务治理的选择

四、最佳实践

 

一、云原生微服务的挑战和趋势

1.微服务架构总览

image.png

最下层的是服务框架:Dubbo、Spring Cloud、多语言微服务

如果应用只有四五个节点或者只有三个服务就不需要多语言微服务,只需要用开元的Dubbo和Spring Cloud就可以。但当服务规模开始扩大,微服务的规模也会变得复杂,这时为了让服务性能更稳定就开始进行服务治理。

服务治理:无损下线、服务容错、服务路由、服务鉴权、限流降级

可观测性:应用监控、链路追踪、日志管理、应用诊断

相关的是 API 管理、服务压测、分布式事务、分布式调度、服务注册发现、服务配置、负载均衡、API网关

为了更好的管理服务,我们还需要DevOps系统

DevOps:服务元数据、服务测试、服务mock、持续集成、IDE插件

还可以通过 IDE 的插件做到端云互联等一些便捷开发的模式。

2.微服务在云原生下的挑战

随着 K8s 的流行,K8s 已经成为云原生下适时的标准。在这种场景下,传统的微服务会遇到很多问题,下面从三个方面讲述:

(1)在效率方面

白天流量高峰期发布,流量不报错

云边端一体化开发部署联调

服务治理体系强依赖SDK升级

K8s下应用IP的不确定、导致服务治理规则的失效

(2)在稳定方面

业务高可用、多可用区部署

同城/异地容灾,业务多活

微服务需要更安全、更可信的环境

(3)在成本方面

应用迁移上云成本很高

极致、灵活的弹性(流量高峰时自动扩容,流量低谷时自动缩容,保证扩容、缩容过程中的流量无损)

3.云原生下微服务趋势

(1)后端服务 BaaS 化

DB,MQ, Redis,注册中心、配置中心、服务治理中心

(2)服务治理下沉、透明化

Java Agent, Sidecar, Java治理和Mesh治理的统一,应用0成本上云

(3)部署形态多云、混合云化

本地云端混部、多云混部、公私混部

下面提一下,服务治理是微服务化深入地必经之路

从Cloud Hosting云上部署到Service Governance服务治理,服务治理的目的是为了提高效率/稳定性,同时是以业务为核心,保证业务永远不会停机。

image.png

4. 阿里微服务治理演进路线

image.png

2008年推出自研微服务,导出的问题是依赖冲突难以管理,同时SDK升级的成本非常高;2013年推出Fat-SDK Pandora,是基于类加载器的隔离容器,它使得用户无需关心SDK升级的成本,同时解决了依赖冲突的问题,通过运维平台使运维治理的效率大为提升;

2019年主推Proxyless Mesh,其实就是 Java Agent的一个方式,可以对Java应用实现无侵入、0成本升级,同时它是全面兼容市面上近五年的 Dubbo 和 Spring 的框架;后面在做的是双模的微服务治理,不仅仅是Java体系的治理,同时也支持多语言体系,通过 One Mesh 的方式来支持,同时它也是易购产品下支持多语言的服务治理,并且多语言与 Java 的服务治理是保持一致的。

5.服务治理的区分

image.png

服务治理分为三个部分,第一部分是开发态Dev,第二是测试态Test,最后就是运行态Ops,运行态再细分,又分为发布态、安全态 Sec、高可用

6.基于 Java Agent 的服务治理

通过Java Agent实现:

业务无侵入、无感知

0成本升级

全面兼容开源

主打更轻量:不改变现有业务架构

image.png 

7.Spring Cloud 上云最佳路径

image.png

当原先完成是在云下时,是通过Spring Cloud开源自建的模式。当迁移上云之后只需要保留最基本的Spring boot、配置、注册发现、客户端调用等最小的依赖,更多的服务治理能力都通过无侵入的Java Agent云产品提供。同时控制台都会使用云产品控制台。

 

二、来电科技微服务治理落地挑战

1.来电科技全面容器化的优势

来电科技现在处于一个全面容器化的阶段,下面介绍一下全面容器化给来电科技带来的好处:部署方便,发布效率大大提高;秒级扩缩容自动恢复;大大节约服务器成本稳定性增强;运维成本大大降低

2. 来电科技微服务治理落地的困局

(1)安全变更三板斧:可灰度、可监控、可回滚

image.png

(2)痛点:在系统服务的发布过程中如何避免业务流量的损失;

因为系统的复杂,安全生产要做到可灰度、可监控、可回滚的能力。但目前系统缺少简单有效的灰度能力,每次系统发布都存在一定的稳定性风险。

(3)为什么来电科技不考虑自建?

接入成本高;维护成本高;功能较单一,不灵活;缺少强大的团队支持

(4)挑战:技术复杂度高;运维成本上升;可定位性变差;快速迭代难以控制风险

下面进一步讲解一下为什么技术复杂度变高以及运维成本上升:

全链路灰度-物理环境隔离

image.png

如果环境比较少,可以使用多套的物理环境隔离,但是我们可以直观的看到;

每套环境都要部署全部服务,机器成本、运维成本是非常高的;同时

创建环境、销毁环境不够灵活;这种方式无法满足多种隔离需求

如果机器的数量少是可以使用这种方式,但是当数量多时,成本会非常高。

所以全链路灰度一般都会选用逻辑环境隔离

image.png

如果服务 A 要到服务 B,要根据流量的标签进行选择是正式环境还是灰度环境,一跳节就要涉及动态路由的能力;如果要实现全链路化,还要对节点进行打标并且对流量进行染色,同时还要具备分布式链路追踪的能力,就是流量不仅要染色,同时流量也可以传递下去。比如说,网关进入灰度流量,到正式环境 A 这边,A 这边也可以到正式环境,但是到 B 的话需要跳到B的灰度环境,所以需要具备分布式链路追踪的能力。

可以看到,其实以上四种能力都有,但是真正完成的时候,成本是非常高的并且技术的复杂度也很高。

相关文章
|
4月前
|
算法 Java 微服务
【SpringCloud(1)】初识微服务架构:创建一个简单的微服务;java与Spring与微服务;初入RestTemplate
微服务架构是What?? 微服务架构是一种架构模式,它提出将单一应用程序划分为一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。 每个服务允许在其独立的进程中,服务于服务间采用轻量级的通信机制互相协作(通常是Http协议的RESTful API或RPC协议)。 每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。另外应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言、工具对其进行构建
561 126
|
5月前
|
监控 安全 Java
Spring Cloud 微服务治理技术详解与实践指南
本文档全面介绍 Spring Cloud 微服务治理框架的核心组件、架构设计和实践应用。作为 Spring 生态系统中构建分布式系统的标准工具箱,Spring Cloud 提供了一套完整的微服务解决方案,涵盖服务发现、配置管理、负载均衡、熔断器等关键功能。本文将深入探讨其核心组件的工作原理、集成方式以及在实际项目中的最佳实践,帮助开发者构建高可用、可扩展的分布式系统。
359 1
|
运维 Kubernetes Dubbo
基于开源体系的云原生微服务治理实践与探索
2020 年,公司正式开始探索落地 Service Mesh 项目。目前,相关产品已经在生产环节正式落地,正在进行接入推广工作。
基于开源体系的云原生微服务治理实践与探索
|
运维 Kubernetes Dubbo
|
19天前
|
人工智能 自然语言处理 Shell
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
本教程指导用户在开源AI助手Clawdbot中集成阿里云百炼API,涵盖安装Clawdbot、获取百炼API Key、配置环境变量与模型参数、验证调用等完整流程,支持Qwen3-max thinking (Qwen3-Max-2026-01-23)/Qwen - Plus等主流模型,助力本地化智能自动化。
31946 115
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
|
8天前
|
应用服务中间件 API 网络安全
3分钟汉化OpenClaw,使用Docker快速部署启动OpenClaw(Clawdbot)教程
2026年全新推出的OpenClaw汉化版,是基于Claude API开发的智能对话系统本土化优化版本,解决了原版英文界面的使用壁垒,实现了界面、文档、指令的全中文适配。该版本采用Docker容器化部署方案,开箱即用,支持Linux、macOS、Windows全平台运行,适配个人、企业、生产等多种使用场景,同时具备灵活的配置选项和强大的扩展能力。本文将从项目简介、部署前准备、快速部署、详细配置、问题排查、监控维护等方面,提供完整的部署与使用指南,文中包含实操代码命令,确保不同技术水平的用户都能快速落地使用。
4678 4
|
14天前
|
人工智能 安全 机器人
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手
OpenClaw(原Clawdbot)是一款开源本地AI助手,支持钉钉、飞书等多平台接入。本教程手把手指导Linux下部署与钉钉机器人对接,涵盖环境配置、模型选择(如Qwen)、权限设置及调试,助你快速打造私有、安全、高权限的专属AI助理。(239字)
6707 18
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手
|
13天前
|
人工智能 机器人 Linux
OpenClaw(Clawdbot、Moltbot)汉化版部署教程指南(零门槛)
OpenClaw作为2026年GitHub上增长最快的开源项目之一,一周内Stars从7800飙升至12万+,其核心优势在于打破传统聊天机器人的局限,能真正执行读写文件、运行脚本、浏览器自动化等实操任务。但原版全英文界面对中文用户存在上手门槛,汉化版通过覆盖命令行(CLI)与网页控制台(Dashboard)核心模块,解决了语言障碍,同时保持与官方版本的实时同步,确保新功能最快1小时内可用。本文将详细拆解汉化版OpenClaw的搭建流程,涵盖本地安装、Docker部署、服务器远程访问等场景,同时提供环境适配、问题排查与国内应用集成方案,助力中文用户高效搭建专属AI助手。
4714 11