当前位置:首页 > 科技  > 软件

十个必知必会的云原生架构设计模式

来源: 责编: 时间:2023-12-02 09:42:54 420观看
导读在构建云原生应用程序时,采用了一些不同的软件架构方法。云原生应用程序通常采用微服务架构,以最大程度地利用云计算模型的优势。这些应用程序需要能够在动态编排和容器化环境中运行。云原生计算是一种在现代、动态环境

在构建云原生应用程序时,采用了一些不同的软件架构方法。云原生应用程序通常采用微服务架构,以最大程度地利用云计算模型的优势。这些应用程序需要能够在动态编排和容器化环境中运行。THP28资讯网——每日最新资讯28at.com

云原生计算是一种在现代、动态环境(如公有云、私有云和混合云)中构建和运行可扩展应用程序的软件开发方法。THP28资讯网——每日最新资讯28at.com

云环境中,软件架构的主要目标是关注点的分离,特别是通过将软件组件模块化到容器中。为了实现这一目标,有几种模式可供选择。本文介绍一些常用模式。THP28资讯网——每日最新资讯28at.com

1 边车/副车模式

边车/副车模式(Sidecar/Adaptor Pattern)用于将主要应用程序的一些外围功能或附加功能抽象为独立的微服务。这种模式可以实现服务之间的独立性,打破紧密耦合的组件。THP28资讯网——每日最新资讯28at.com

边车/副车模式适用于应用程序使用相同的语言和库,并且需要一个共享生命周期但可以独立部署的服务。然而,如果为每个实例部署边车服务的资源成本超过隔离优势,那么在应用程序中实施边车/副车模式可能不是一个明智的决策。例如,将日志记录、配置等功能抽象到单独的微服务中,如下面的示例所示,每个主要服务都有一个关联的辅助服务,它们之间形成一对一的关系。在应用边车/副车模式时,需要综合考虑资源成本和隔离优势。THP28资讯网——每日最新资讯28at.com

图片边车/副车模式THP28资讯网——每日最新资讯28at.com

2 大使模式

大使模式(Ambassador Pattern)经常用于扩展现有服务的网络功能,特别是对于那些过于古老或复杂且无法修改的服务。THP28资讯网——每日最新资讯28at.com

大使服务可以被视为与客户端共存的一个进程外代理。THP28资讯网——每日最新资讯28at.com

通过此模式添加额外的代理会增加延迟。与边车不同,这种模式可以用于多个服务。这种模式对于增强遗留服务的连接功能非常有效。如果低延迟是关键因素,使用大使模式可能会增加代理开销成本,因此不是一个好的选择。THP28资讯网——每日最新资讯28at.com

图片大使模式THP28资讯网——每日最新资讯28at.com

3 散点/聚集模式

散点/聚集模式(Scatter/Gather Pattern)是一种用于并行处理大规模数据集的设计模式。这种模式的要点是有一个聚合器,汇总来自不同服务的响应并提供最佳报价。这种模式对于控制消息流到所有微服务非常有用。THP28资讯网——每日最新资讯28at.com

图片散点/聚集模式THP28资讯网——每日最新资讯28at.com

散点/聚集模式适用于需要对大量数据进行并行处理的情况,如分布式计算、数据分析、并行搜索等。它可以提高系统的处理速度和吞吐量,利用多个处理单元同时处理数据,从而加快处理过程。THP28资讯网——每日最新资讯28at.com

4 前端后端模式

前端后端模式(Backends For Frontends Pattern)的主要要点是在前端和实际后端之间添加另一层后端,这被称为前端后端。这是工业界广泛应用的最受欢迎的模式之一。通过添加这种额外的层,可以在不同的前端和后端服务器之间进行编排,验证过滤来自前端的响应,映射和转换来自后端的数据模型。THP28资讯网——每日最新资讯28at.com

图片BFF模式THP28资讯网——每日最新资讯28at.com

5 反腐败层模式

反腐败层模式(Anti-Corruption Layer Pattern)用于解决在不同子系统或微服务之间通信时的语义不匹配问题。这种模式最初由埃里克·埃文斯在领域驱动设计中描述。THP28资讯网——每日最新资讯28at.com

当存在多个子系统或微服务它们各自使用不同的语义和数据结构时,可能会导致通信困难和混乱。反腐败层模式的目标是在这些不兼容的系统之间建立一个翻译或转换层,以确保它们之间能够正确地交互和通信。这个层充当了一个中间件,负责将一个系统的请求转换为另一个系统可以理解的格式,并将响应从一个系统的格式转换为另一个系统可以接受的格式。THP28资讯网——每日最新资讯28at.com

反腐败层模式的缺点和注意事项:THP28资讯网——每日最新资讯28at.com

  • 增加了额外的中间层,可能会引入性能延迟。
  • 需要额外的开发和维护工作来处理转换逻辑。
  • 需要确保反腐败层的正确性和稳定性,以避免引入更多问题。

图片反腐败层模式THP28资讯网——每日最新资讯28at.com

6 命令与查询职责分离模式

命令与查询职责分离模式(Command and Query Responsibility Segregation,CQRS)旨在将读操作(查询)和写操作(命令)分离开来,以优化系统的性能、可伸缩性和灵活性。THP28资讯网——每日最新资讯28at.com

在传统的应用程序中,读操作和写操作通常共享相同的数据模型和数据库,这会产生一些问题,例如当需要进行复杂查询时,可能会对写操作的性能产生影响,或者在需要高并发写操作时可能会影响读操作的性能。THP28资讯网——每日最新资讯28at.com

解决方案是命令查询职责分离(CQRS),将读取和写入分为不同的组件:THP28资讯网——每日最新资讯28at.com

  • 命令必须基于任务(例如“预订酒店房间”而不是“将预订状态设置为已预订”)。
  • 命令通过异步通信实现。
  • 查询不会改变数据库。查询响应使用不包含业务逻辑的数据传输对象(DTO)。

这种模式的缺点是需要保持读取和写入组件的同步。THP28资讯网——每日最新资讯28at.com

图片命令查询职责分离模式THP28资讯网——每日最新资讯28at.com

7 事件溯源模式

事件溯源模式(Event Sourcing Pattern)是过去十年中流行的一种技术,用于处理CRUD应用程序缺乏一致性的情况。与传统CRUD应用程序仅保存当前状态不同,事件溯源的主要是以追加方式保存数据,以存储对数据执行的完整系列操作。它提供了事务数据的一致性,保持了完整的编辑历史记录,提供完全的审计控制。THP28资讯网——每日最新资讯28at.com

优点:THP28资讯网——每日最新资讯28at.com

  • 通过实现强数据一致性来提高性能。
  • 使用事件存储简化数据编辑的实现和管理。
  • 事件对领域专家可读,不仅对开发人员可理解。
  • 防止对同一数据的并发更新,因为其事件的时间顺序。
  • 事件存储作为数据操作的单一数据源

缺点:THP28资讯网——每日最新资讯28at.com

  • 对于小型领域应用来说可能过于工程化。
  • 不适用于实时数据驱动的应用程序。

8 服务网格模式

服务网格模式(Service Mesh Pattern)旨在提供对微服务之间通信、安全、监控和可观察性的细粒度控制。THP28资讯网——每日最新资讯28at.com

此模式要点是将与应用程序无关的横切关注点(如通信、监控、安全性、身份验证/授权等)与核心业务逻辑隔离开来。这种专用基础设施层为低延迟、可配置性增加了价值。THP28资讯网——每日最新资讯28at.com

除了身份验证/授权、服务发现,服务网格模式还提供其他重要功能,如:THP28资讯网——每日最新资讯28at.com

  • 断路器
  • 速率限制
  • 条件速率限制
  • 流量转移

9 笨拙组件与智能组件(面向前端)模式

此模式是在关注点分离(SoC)原则基础上的一种进阶模式。在这种模式中,将前端组件分为两种类型:笨拙组件(Dumb Components)和智能组件(Smart Components)。笨拙组件主要负责呈现和展示数据,而智能组件则负责处理数据流和业务逻辑,将数据注入到笨拙组件中。主要通过在笨拙组件中基于@Input和@Output(EventEmitter)的双向数据绑定实现。通过这些注解,笨拙组件从智能组件获取相关数据,或将数据发送到智能组件。智能组件通常注入服务或外观(Facade)并处理数据流。THP28资讯网——每日最新资讯28at.com

10 单向架构(面向前端)模式

单向架构(面向前端)模式是一种结合响应式编程的主要模式。在当今的前端框架中,数据流是单向的,由数据流向驱动。数据仅以一种方向流向视图,而视图的反馈会触发不同的操作。这种设计使得对数据的控制更加精确。在处理数据流时,使用不同的库如RxJs、NgRx、Flux,可以提供多种功能和工具。THP28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-35990-0.html十个必知必会的云原生架构设计模式

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python中很少人会用的Fileinput模块详解

下一篇: 苹果 tvOS 17.2 更改遥控板 Siri 按钮特性:短按调用搜索

标签:
  • 热门焦点
  • 2023年Q2用户偏好榜:12+256G版本成新主流

    3月份的性能榜、性价比榜和好评榜之后,就要轮到2023年的第二季度偏好榜了,上半年的新机潮已经过去,最明显的肯定就是大内存和存储的机型了,另外部分中端机也取消了屏幕塑料支架
  • 5月iOS设备性能榜:M1 M2依旧是榜单前五

    和上个月一样,没有新品发布的iOS设备性能榜的上榜设备并没有什么更替,仅仅只有跑分变化而产生的排名变动,刚刚开始的苹果WWDC2023,推出的产品也依旧是新款Mac Pro、新款Mac Stu
  • 一文看懂为苹果Vision Pro开发应用程序

    译者 | 布加迪审校 | 重楼苹果的Vision Pro是一款混合现实(MR)头戴设备。Vision Pro结合了虚拟现实(VR)和增强现实(AR)的沉浸感。其高分辨率显示屏、先进的传感器和强大的处理能力
  • 2天涨粉255万,又一赛道在抖音爆火

    来源:运营研究社作者 | 张知白编辑 | 杨佩汶设计 | 晏谈梦洁这个暑期,旅游赛道彻底火了:有的「地方」火了——贵州村超旅游收入 1 个月超过 12 亿;有的「博主」火了&m
  • 猿辅导与新东方的两种“归途”

    作者|卓心月 出品|零态LT(ID:LingTai_LT)如何成为一家伟大企业?答案一定是对“势”的把握,这其中最关键的当属对企业战略的制定,且能够站在未来看现在,即使这其中的
  • 年轻人的“职场羞耻感”,无处不在

    作者:冯晓亭 陶 淘 李 欣 张 琳 马舒叶来源:燃次元“人在职场,应该选择什么样的着装?”近日,在网络上,一个与着装相关的帖子引发关注,在该帖子里,一位在高级写字楼亚洲金
  • 华为Mate 60保护壳曝光:硕大后置相机模组 凸起程度有惊喜

    这段时间以来,关于华为新旗舰的爆料日渐密集。据此前多方爆料,今年华为将开始恢复一年双旗舰战略,除上半年推出的P60系列外,往年下半年的Mate系列也将
  • 机构称Q2国内智能手机销量同比下滑4% vivo份额重回第1

    7月29日消息,根据市场调查机构Counterpoint Research公布的最新报告,2023年第2季度中国智能手机销量同比下降4%,创新自2014年以来第2季度销量新低。报
  • 滴滴违法违规被罚80.26亿 共存在16项违法事实

    滴滴违法违规被罚80.26亿 存在16项违法事实开始于2121年7月,历经一年时间,网络安全审查办公室对“滴滴出行”网络安全审查终于有了一个暂时的结束。据“网信
Top