微服务和 Serverless 架构-EDAS 整体架构

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
应用实时监控服务-应用监控,每月50GB免费额度
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
简介: 微服务和 Serverless 架构-EDAS 整体架构

开发者学习笔记【阿里云云原生助理工程师认证(ACA)课程微服务和 Serverless 架构-EDAS 整体架构】

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


微服务和 Serverless 架构-EDAS 整体架构

 

课程目录

一、阿里企业级分布式应用服务EDAS

二、EDAS中的微服务核心组件

三、EDAS应用托管

 

一、阿里企业级分布式应用服务 EDAS

image.png

阿里云的商用服务框架,EDAS的功能和操作,微服务架构的一个重要特点就是一个微服务的运行需要一个功能完善的微服务框架进行支撑,虽然通过互联网公司和开源社区的共同努力,已经有了很多的开源微服务核心组件可以选择,但是通过开源组件构建一套微服务治理框架实际上还需要消耗很多的开发人员和运维人员的精力,如果开发人员和运维人员相对于框架的内部实现机制没有深刻的理解,一旦出现问题也不容易排查,同时相对于开源的版本,大型商业公司内部使用的版本,虽然接口和开源的版本没有太大区别,但是在吞吐率、安全性、人性化操作界面等功能上,还是会有相当大的提高,在这种情况下,云计算时代企业及应用的开发者,使用开源版本微服务核心组件,搭建微服务治理框架有时候并不是一个很好的选择,为了让更多的云计算用户能够以简单高效的方式使用微服务治理框架。

2007年阿里云推出来自己的分布式服务应用EDAS,为用户提供商业的微服务治理框架,而EDAS也是采用了Pass微服务平台的治理方式提供服务。也就是意味着用户不用一次性投入大量成本,可以像租用基础设施一样,按时长租用的方式进行付费。

 

二、EDAS 中的微服务核心组件

image.png

首先看一下EDAS服务应用核心组件的知识情况,还是以五大核心组件进行说明。
首先微服务框架方面,EDAS的支持还是比较全面的,包括Spring Cloud Dubbo,HSF这常见的微服务框架组件,EDAS都是支持的。在核心组件这一块可以看到图中相对于开源组件商用组件有它自己的应用特点,一般来讲开源组件会把每个模块分的比较细,而且模块和模块之间都是具有可替换性的。比如以服务计算中心为例,可以回想之前列出的开源服务注册中心,还有阿里开源的Nacos几种服务注册中心可以由开发人员自由选择。

自由选择一方面带来了灵活的好处,但是也要求开发者对每一个组件的内部实践有一定的了解,才能做出合适的判断。但是在商用版本上,一般采用比较集成化的方法进行部署,也就是由一个功能大的组件实行大部分的功能,这样做的好处就是模块和模块之间设计思路一致,内部调用的效率也可以达到一个更高的水平。所以,在EDAS内服务注册中心、负载均衡和配置中心这三大部分功能都是由阿里开源Nacos的商用版本实现的,这一点和版本有很大的不同。

另一个组件就是微服务网关,这部分也是和开源的实践有所不同。首先EDAS产品内部包含了服务健全组件,可以实现微服务权限的调用管理,避免调用滥用,同时EDAS还结合阿里云自己的一个微服务网关产品CSB,它除了提供开源网关的同一入口,服务健全、动态陆游等功能,还包含了很多开源网关不具备的功能,比如协议转化、跨网络级联调用等,因此CSB产品的复杂性会比开源网关高很多,所以我们把它当一个单独的产品来进行处理。

最后一部分就是断路器组件,开发者可以使用阿里开源的Sentinel, 同时也兼容Hystrix,不过这里更加推荐使用Sentinel的商用版本(AHAS),从功能上来讲AHAS比又有了一个很大的扩展,它已经不再是一个简单的限流模块的概念。而是包含了整块的微服务高可用解决方案中会涉及到的一系列高可用功能,在后面课程会有详细讲解。

这五部分就是EDAS核心组件的情况,另外在实际开发的过程中我们在配置本地开发环境时可以搭建一个轻量级的EDAS本地活动中心,它实际上是一个EDAS的本地轻量级版本。这样我们在通过本地轻量级中心调试过的版本微服务代码,不需要再做修改就可以无缝地将微服务移到EDAS生产环境上,便于我们开发者进行应用的快速开发部署。

 

三、EDAS 应用托管

image.png

EDAS的另一个功能就是应用托管,通过传统的开源组件方式组件微服务核心框架时,应用的复制、升级、下限等工作并没有统一的解决方案,需要运维人员手动登录每一台服务器进行操作,虽然运维人员可以用脚本等方式进行初步的自动化,但是效率并不是很高,同时企业级应用的发布和升级过程是一个风险较高的操作,而运维人员在执行例如分批发布等高难度任务时无论是采用手动还是脚本的方式,其稳定性和可靠性都不能达到商用产品的标准。

同时和微服务密切的一些相关组件,如弹性自动扩容、应用监控、应用日志等,也需要开发人员手动的方式加以集成,因此除了作为应用技能服务核心组件,提供微服务框架支持,EDAS还提供了商业级的应用托管能力,是从阿里巴巴内部项目中演化而来,历经了多年双11的严格考验,其稳定性远远超过运维人员手动编写脚本或一些开源产品。
通过EDAS应用托管开发者在部署和升级应用时,不在需要每台应用服务器进行繁杂操作,只需要在控制台即可以完成应用的集群部署以及多种形式的应用、发布、升级和回滚。

另外从左侧图中可以看到EDAS还集成了多种微服务运行中必不可少的功能,主要可以分为应用监控、服务治理和智能运维三大类,为企业级微服务的安全运营提供了坚实的技术保障。

相关实践学习
通过EDAS实现K8s微服务应用的金丝雀发布
本实验旨在通过使用分布式应用服务EDAS纳管容器服务ACK Serverless,体验微服务应用的部署、访问和高级发布能力。
SpringMVC框架入门
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或集成其他MVC开发框架,如Struts2等。 相关的阿里云产品企业级分布式应用服务 EDAS:企业级分布式应用服务 EDAS(Enterprise Distributed Application Service)是一个应用托管和微服务管理的 PaaS 平台,提供应用开发、部署、监控、运维等全栈式解决方案,同时支持 Spring Cloud、Apache Dubbo(以下简称 Dubbo )等微服务运行环境,助力您的各类应用轻松上云。产品详情: https://www.aliyun.com/product/edas 
目录
打赏
0
0
0
0
319
分享
相关文章
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
63 12
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
基于 Apache RocketMQ 的 ApsaraMQ Serverless 架构升级
基于 Apache RocketMQ 的 ApsaraMQ Serverless 架构升级
微服务架构解析:跨越传统架构的技术革命
微服务架构(Microservices Architecture)是一种软件架构风格,它将一个大型的单体应用拆分为多个小而独立的服务,每个服务都可以独立开发、部署和扩展。
1107 36
微服务架构解析:跨越传统架构的技术革命
微服务引擎 MSE:打造通用的企业级微服务架构
微服务引擎MSE致力于打造通用的企业级微服务架构,涵盖四大核心内容:微服务技术趋势与挑战、MSE应对方案、拥抱开源及最佳实践。MSE通过流量入口、内部流量管理、服务治理等模块,提供高可用、跨语言支持和性能优化。此外,MSE坚持开放,推动云原生与AI融合,助力企业实现无缝迁移和高效运维。
126 1
智慧工地云平台的技术架构解析:微服务+Spring Cloud如何支撑海量数据?
慧工地解决方案依托AI、物联网和BIM技术,实现对施工现场的全方位、立体化管理。通过规范施工、减少安全隐患、节省人力、降低运营成本,提升工地管理的安全性、效率和精益度。该方案适用于大型建筑、基础设施、房地产开发等场景,具备微服务架构、大数据与AI分析、物联网设备联网、多端协同等创新点,推动建筑行业向数字化、智能化转型。未来将融合5G、区块链等技术,助力智慧城市建设。
102 0
云端问道9期实践教学-省心省钱的云上Serverless高可用架构
详细介绍了云上Serverless高可用架构的一键部署流程
78 10
卓越效能,极简运维,Serverless高可用架构
本文介绍了Serverless高可用架构方案,当企业面对日益增长的用户访问量和复杂的业务需求时如何实现更高的灵活性、更低的成本和更强的稳定性。
云端问道9期方案教学-省心省钱的云上Serverless高可用架构
本文介绍了省心省钱的云上Serverless高可用架构,主要分为两个部分:1. Serverless的发展历程、特点及高可用架构;2. SAE(Serverless Application Engine)产品介绍。Serverless作为一种云计算模式,让用户无需管理底层基础设施,自动弹性扩展资源,按需付费,极大提高了资源利用率和业务灵活性。SAE作为Serverless计算服务,提供了简便的应用部署、运维自动化、丰富的弹性策略和可观测性等功能,帮助企业降低运营成本、提升研发效率。通过极氪汽车、南瓜电影等客户案例展示了SAE在实际应用中的优势。
卓越效能,极简运维,体验Serverless高可用架构,完成任务可领取转轮日历!
卓越效能,极简运维,体验Serverless高可用架构,完成任务可领取转轮日历!

云原生

+关注

相关产品

  • 企业级分布式应用服务
  • 函数计算
  • AI助理

    你好,我是AI助理

    可以解答问题、推荐解决方案等