当前位置: 首页 > ai >正文

系统架构-云原生架构设计

内涵

基于云原生技术,旨在将云应用中的非业务代码部分进行最大化的剥离,让云设施接管应用中原有的大量非功能特性。

云原生的代码包括三部分:业务代码、三方软件、处理非功能特性的代码

具备云原生架构的应用可以最大程度利用云服务和提升软件交付能力

架构原则

  • 服务化原则:拆分为微服务架构
  • 弹性原则:系统的部署可以随着业务量的变化而变化
  • 可观测原则:通过日志、链路跟踪和度量等手段
  • 韧性原则:软件有一定的抵御软硬件异常的能力
  • 所有过程自动化原则:通过配置数据自描述和面向终态的交付过程
  • 零信任原则:需要基于认证和授权重构访问控制的信任原则
  • 架构持续演进原则:本身是一个需要不断演化的模型

主要架构模式

  1. 服务化架构模式:典型模式是微服务和小服务模式,通过服务化架构,把代码模块关系和部署关系进行分离
  2. Mesh化架构模式:把中间件框架从服务进程中分离
  3. Serverless模式:将“部署”这个动作从运维中分离,把应用运行的地点、操作系统、CPU性能、网络配置都交给云
  4. 存储计算分离模式:把暂存态数据、结构化和半结构化数据用云服务保存
  5. 分布式事务模式:一个大业务需要访问多个微服务,会带来分布式事务问题
  6. 可观测架构:可以Logging、Tracing、Metrics进行观测
  7. 事件驱动架构:本质上是应用/组件间的集成架构模式(隐式调用模式) 

相关技术 

  • 容器技术:将应用及其所有依赖项打包,使应用不再受环境限制,在不同计算环境间快速、可靠地运行
  • 云原生微服务:将后端单体应用拆分为松耦合的多个子应用,这些子应用称为微服务,多个微服务共同形成了一个物理独立但逻辑完整的分布式微服务体系。+
  • 无服务器技术(Serveless)屏蔽了服务器的各种运维复杂度,让开发人员可以将更多精力用于业务逻辑设计与实现
  • 服务网格(ServiceMesh)实现应用与平台基础设施的解耦,意味着开发者无需关注微服务相关治理问题而聚焦于业务逻辑本身 
http://www.xdnf.cn/news/4310.html

相关文章:

  • 14前端项目----登录/注册
  • 【强化学习】#4 蒙特卡洛方法
  • leetcode 70.爬楼梯(c++详细最全解法+补充知识)
  • C++ 备忘录模式详解
  • NVM完全指南:安装、配置与最佳实践
  • 尤雨溪宣布:Vue 生态正式引入 AI
  • 医疗人工智能大模型中的关键能力:【中期训练】mid-training
  • android中的背压问题及解决方案
  • AOP封装进行批量的数据查询并填充
  • shell 脚本
  • Android学习总结之MMKV(代替SharedPreferences)
  • 黑电平校正(Black Level Correction, BLC)算法
  • 【C++】C++中this指针的介绍及使用
  • 实现引用计数线程安全的shared_ptr
  • 从Huggingface下载模型的方法小结
  • Linux如何安装AppImage程序
  • WHAT - Rust 静态派发(Static Dispatch)和 动态派发(Dynamic Dispatch)
  • 计算机视觉注意力机制【一】常用注意力机制整理
  • The Action Replay Process
  • spark行动算子
  • Java中对象集合转换的优雅实现【实体属性范围缩小为vo】:ListUtil.convert方法详解
  • mujoco仿真器学习笔记
  • 孤岛铜怎么解决
  • CAN报文中的标准帧和扩展帧
  • C++ string的使用
  • C++输入输出
  • 基础的OSPF实验配置笔记
  • 车载诊断框架 --- 车载网关诊断通信与网关角色
  • WordPress_AdsProPlugin Sql注入漏洞复现(CVE-2024-13322)
  • Navicat访问mongo时密码转义字符问题