目录

架构-13云原生架构

【架构-13】云原生架构

云原生架构产生背景?

https://i-blog.csdnimg.cn/blog_migrate/07a08da88a9cb2a300269999ebeb7946.png

(1)大量资源被占用且难以分享,上云后,云厂商提供统一的IaaS能力和云服务。

(2)提供极致性能的云原生算力。

(3)集成服务,构建管理数据、运营、运维、AI的能力,赋能企业应用。

(4)提供安全服务,保证业务安全运行。

云原生架构的定义?

云原生是面向“云”而设计的,技术即IaaS、PaaS、SaaS,旨在将云应用中非业务代码部分剥离,并将这类非功能特性(弹性、安全、可观测性)让云设施接管。从而具备轻量、敏捷、高度自动化的特点。

  • 非功能性大量委托
  • 高度自动化的软件交付

云原生架构的原则?

  • 服务化原则:拆分为微服务架构、小服务架构,通过服务化架构将不同生命周期的模块分离出来。
  • 弹性原则:系统的部署规模可以随着业务量的变化自动伸缩。
  • 可观测原则:系统清楚这次变更带来了哪些影响和故障。
  • 韧性原则:软件所依赖的软硬件组件出现各种异常时,软件表现出来的抵御能力。
  • 所有过程自动化原则:软件交付和运维的自动化。
  • 零信任原则:默认情况下不应该信任网络内部和外部的任何人/设备/系统。

云原生架构模式?

  • 服务化架构模式:微服务和小服务模式。

  • Mesh架构模式:是把中间件框架(RPC、缓存、异步消息)从业务进程中分离。

    https://i-blog.csdnimg.cn/blog_migrate/aa777d931c526be04aadad3927aaf53c.png

  • Serverless模式

    即Serverless包揽了部署的活,开发者不用关心应用运行地点、操作系统、网络配置、CPU性能等。

  • 存储计算分离模式

    持久化数据采用云服务保存,实现存储计算分离。

  • 分布式事务模式

    大颗粒度业务访问多个微服务,带来的分布式事物问题。

  • 可观测架构模型

  • 事件驱动模式

    https://i-blog.csdnimg.cn/blog_migrate/72ac5aa4e8f709fe3a793b35d952c3a0.png

云原生架构相关技术?

  1. 容器技术

    Docker容器基于操作系统虚拟化技术,Docker提出了创新的应用打包规范-Docker镜像,解耦了应用与运行环境,使应用可以在不同计算环境一致、可靠地运行。

  2. 微服务技术

    微服务模式将后端单体应用拆分为松耦合的多个子应用,每个子应用负责一组子功能。这些子应用称为“微服务”,多个“微服务”共同形成了物理独立但逻辑完整的分布式微服务体系,这些微服务相对独立,通过解耦研发、测试和部署流程提高了整体迭代效率。

  3. 自动化运维:

    特点:通过自动化工具和流程,实现对云原生应用程序的部署、监控、扩展和故障恢复等运维任务的自动化。这包括使用基础设施即代码(Infrastructure as Code)和自动化配置管理工具等。

    优点:减少人工操作和人为错误,提高系统的稳定性和可靠性。自动化运维可以提供快速响应和动态调整能力,适应变化的负载和需求。

  4. 弹性扩展:

    特点:根据系统的负载和需求,动态调整应用程序的资源(如计算、存储、网络)的规模和容量。这可以通过自动扩展和负载均衡等技术实现。

    优点:实现按需分配和使用资源,提高系统的效率和成本效益。弹性扩展能够应对流量峰值和高负载情况,确保系统的可用性和性能。

  5. DevOps和持续交付:

    特点:将开发团队和运维团队紧密协作,实现快速、频繁的应用程序交付和部署。这包括使用自动化测试、持续集成和持续部署等实践。

    优点:加快开发和发布新功能的速度,缩短上线时间。DevOps和持续交付可以提高团队的协作效率,减少部署错误和故障。