阿里云中间件产品科技普惠企业,满足多场景需求-阿里云开发者社区

开发者社区> 云攻略小攻> 正文

阿里云中间件产品科技普惠企业,满足多场景需求

简介:

阿里云上的互联网中间件产品家族不久前又添了一名新成员,应用配置管理(ACM)的工具类产品。基于该产品,用户可以在微服务应用架构、分布式架构下的服务治理、应用业务场景动态推送、大数据实时计算算法调整、企业级互联网架构的异地多活等场景下极大地减轻配置管理的工作量,增强配置管理的服务能力,价格却只有传统架构的十分之一。
ACM 产品是一款从 2008 年开始就开始使用并目前被大量应用于阿里内部应用配置管理的工具类产品,是阿里内部被众多应用最广泛依赖的中间件产品之一,在阿里内外众多核心场景有着广泛使用案例。

一、微服务应用架构下的配置管理
在微服务架构下,随着应用和机器数目的增多,配置(如DB_URL访问信息、服务连接池、服务内部缓存大小等)管理的工作会变得很繁琐。单个应用下多个机器的配置分发,应用对应用的配置依赖,都将成为挑战。
在传统架构的应用发布的过程中,应用的配置更改要求整个应用重新打包发布,整个过程非常繁琐,且容易出错。如下图所示。
7

在基于ACM的微服务场景下,应用的重要配置被发布到ACM中,新的配置发布并不依赖配置打包。在新版本的配置发布后,所有应用立即即可生效。如下图所示。
8

采用ACM作为配置中心为微服务带来以下好处:
• 所有配置中心化,使得在众多应用的情况下配置管理变得更加方便。
• 所有配置不依赖版本发布,使得配置变更更加灵活。
• 由于ACM天生支持灰度发布和回滚,使得配置的变更发布在微服务架构下变得更加安全。

二、分布式架构下的服务治理下的服务治理
在各类分布式架构下,如何基于某类 RPC 框架(RESTful, HSF, Dubbo 等)做好服务治理是非常关键的。其中,服务治理的服务路由,服务限流,服务降级,服务鉴权等,均可通过配置中心实现。
以限流降级为例,在阿里双11,对于每一次的服务限流降级相关操作都要求秒级响应,其内部就实际通过 ACM 来实现。如下图所示。其中,每个 RPC 的服务端都会通过 ACM 注册监听对应服务的流控管理端息。当应用需要流控时,管理员通过到服务治理控制台做出限流的操作,服务治理系统会通过 ACM 将流控信息推送到对应的目标应用服务端,让应用服务端根据对应配置采取相应的限流动作。
9

采用ACM为应用在分布式架构下的服务治理带来以下好处:
• 良好的性能,通过采用配置推送的方式来监听服务治理信息,对性能几乎无影响。
• 相关的服务治理信息可以秒级推送到,响应时间迅速。
• 当限流降级错推以后还可以通过秒级配置回滚来恢复状态。

三、应用业务场景动态推送
如何快速让前端页面响应营运活动,降低开发成本,提高运营效率也是ACM的一大场景。
以某电商运营为例:通过在前端Javascript埋入ACM的配置内容(如三方库版本号,静态资源URL,等),可以运营人员在运营活动发布时直接通过运营工具借助修改ACM配置规则直接让前端Javascript的展示生效。
10

采用ACM为应用的业务场景推送带来以下好处:
• 通过配置将业务静态代码和业务场景解耦,显著提高运营相关的应用发布流程。

四、大数据实时计算算法调整
在大数据的实时计算领域,通常需要动态调整计算参数来取得最精确的实时计算结果。
以阿里巴巴某内部 APM 类监控系统为例,该监控系统需要动态调节业务的阈值,来控制实时计算系统,计算业务的报警。而且在阈值修改过程中,要求整个过程要求实时性好,应用不能停机。该监控系统的计算阈值采用 ACM 的规则来推送。该场景如下所示。
11

采用ACM为应用在大数据实时计算场景带来以下好处:
• 应用计算参数动态配置,动态生效,生效时间块,性能影响低。

五、企业级互联网架构下的异地多活场景
异地多活是目前企业级互联网架构中的一种高级容灾架构。相对于传统容灾架构的特点相比,有着业务恢复时间短,容量需求低,运维快捷简单等特点。目前多活架构在阿里巴巴、饿了么等公司被广泛采用。
在阿里巴巴内部,容灾多活架构的核心算法, ID分片和对应的的路由规则, 采用 ACM 来动态推送。其中,相应的客户端和服务端,如RPC,MQ,DB都植入了路由路径。当容灾演练或者真实灾难发生时,管理员只需要动态的推送规则,响应的规则会影响到所有架构组件。其中,示意图所下所示。
12

采用ACM为应用在异地多活场景中带来以下好处:
• 基础架构和容灾逻辑解耦,具体的路由逻辑由容灾规则切换决定。
• 生效快,理论上容灾的切换规则可以秒级推送到十万级别机器。

阿里云互联网中间件产品追求创新的脚步从未停止,不断根据用户需求和市场发展调整并升级产品,相信未来,中间件产品一定会给用户带来更多更好的体验。

版权声明:本文中所有内容均属于阿里云开发者社区所有,任何媒体、网站或个人未经阿里云开发者社区协议授权不得转载、链接、转贴或以其他方式复制发布/发表。申请授权请邮件developerteam@list.alibaba-inc.com,已获得阿里云开发者社区协议授权的媒体、网站,在转载使用时必须注明"稿件来源:阿里云开发者社区,原文作者姓名",违者本社区将依法追究责任。 如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

计算,存储,网络,数据库,企业应用服务,开发者服务统统在这里。

官方博客
查看更多产品信息