【架构-13】云原生架构

云原生架构产生背景?

在这里插入图片描述

(1)大量资源被占用且难以分享,上云后,云厂商提供统一的IaaS能力和云服务。
(2)提供极致性能的云原生算力。
(3)集成服务,构建管理数据、运营、运维、AI的能力,赋能企业应用。
(4)提供安全服务,保证业务安全运行。

云原生架构的定义?

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

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

云原生架构的原则?

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

云原生架构模式?

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

  • Mesh架构模式:是把中间件框架(RPC、缓存、异步消息)从业务进程中分离。
    在这里插入图片描述

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

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

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

  • 可观测架构模型

  • 事件驱动模式
    在这里插入图片描述

云原生架构相关技术?

  1. 容器技术
    Docker容器基于操作系统虚拟化技术,Docker提出了创新的应用打包规范-Docker镜像,解耦了应用与运行环境,使应用可以在不同计算环境一致、可靠地运行。
  2. 微服务技术
    微服务模式将后端单体应用拆分为松耦合的多个子应用,每个子应用负责一组子功能。这些子应用称为“微服务”,多个“微服务”共同形成了物理独立但逻辑完整的分布式微服务体系,这些微服务相对独立,通过解耦研发、测试和部署流程提高了整体迭代效率。
  3. 自动化运维:
    特点:通过自动化工具和流程,实现对云原生应用程序的部署、监控、扩展和故障恢复等运维任务的自动化。这包括使用基础设施即代码(Infrastructure as Code)和自动化配置管理工具等。
    优点:减少人工操作和人为错误,提高系统的稳定性和可靠性。自动化运维可以提供快速响应和动态调整能力,适应变化的负载和需求。
  4. 弹性扩展:
    特点:根据系统的负载和需求,动态调整应用程序的资源(如计算、存储、网络)的规模和容量。这可以通过自动扩展和负载均衡等技术实现。
    优点:实现按需分配和使用资源,提高系统的效率和成本效益。弹性扩展能够应对流量峰值和高负载情况,确保系统的可用性和性能。
  5. DevOps和持续交付:
    特点:将开发团队和运维团队紧密协作,实现快速、频繁的应用程序交付和部署。这包括使用自动化测试、持续集成和持续部署等实践。
    优点:加快开发和发布新功能的速度,缩短上线时间。DevOps和持续交付可以提高团队的协作效率,减少部署错误和故障。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/818794.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android Studio通过修改文件gradle-wrapper.properties内容下载gradle

一、问题描述 在Android Studio中新建项目后会下载你所新建的项目的activity/gradle/wrapper目录下所配置的gradle-7.3.3-bin.zip包(笔者的是该版本包),而大多数时候会下载失败,如下 二、解决办法 新建工程后,取消下…

AI术语大全:AGI、LLM、GenAI、GPT、ChatGPT和AIGC是什么意思?

讲动人的故事,写懂人的代码 自2022年底ChatGPT在全球AI界闪亮登场以后,你是不是经常听到AGI、LLM、GenAI、GPT和AIGC这几个词,但总是分不清它们到底是什么意思? 今天,我就用简单的话来给你讲讲这些词到底是什么意思。 AI,人工智能(Artificial Intelligence),就是让机…

一比一实现ChatGPT流式接口前端显示效果(打字机效果)【对比几种不同的流式实现方案】

前端实现GPT或者其他大模型的流式推送的数据接收可以通过EventSource、Axios、或者基于EventSource实现的microsoft/fetch-event-source插件库; GPT官方是基于原生EventSource实现的流式数据接收,我们作为个人开发使用可以使用Axios或者使用microsoft/fe…

JavaWeb开发03-Mybatis入门-基础操作-XML映射文件-动态SQL

一、Mybatis-入门 Java程序控制数据库 1.入门 定义实体类:一定要和表中的字段一一对应 配置连接数据库数据 建立Mapper层语句,来获取数据库数据以及将其封装到user的list中去。 2.配置SQL提示 为了进行查询数据库中有哪些表,所以得连接数据…

【AngularJs】前端使用iframe预览pdf文件报错

<iframe style"width: 100%; height: 100%;" src"{{vm.previewUrl}}"></iframe> 出现报错信息&#xff1a;Cant interpolate: {{vm.previewUrl}} 在ctrl文件中信任该文件就可以了 vm.trustUrl $sce.trustAsResourceUrl(vm.previewUrl);//信任…

FPGA - 仲裁器的设计实现

一&#xff0c;为什么做仲裁 在多主单从的设计中&#xff0c;当多个源端同时发起传输请求时&#xff0c;这个时候就需要仲裁器来根据优先级来判断响应哪一个源端&#xff0c;向其传输数据。比如&#xff1a;以太网仲裁&#xff0c;DDR仲裁&#xff0c;光纤传图仲裁..... 二&a…

android wifi直连 wifip2pmanager

android wifi直连 wifip2pmanager&#xff1b;使用WiFi 直连&#xff0c;然后通过udp进行通讯。 Android WiFi 直连&#xff08;Wi-Fi Direct&#xff0c;也称为Wi-Fi P2P&#xff09;是一种让两台或多台设备通过Wi-Fi技术直接进行点对点连接的技术&#xff0c;无需借助传统的无…

iOS知识点 ---- 离屏渲染

iOS 中的离屏渲染&#xff08;Off-Screen Rendering&#xff09;是指在绘制某些复杂图形或特殊效果时&#xff0c;系统无法直接在当前屏幕缓冲区进行绘制&#xff0c;而是需要先在额外的离屏缓冲区&#xff08;Off-Screen Buffer&#xff09;中完成渲染工作&#xff0c;然后再将…

electron打包编译国产统信uos系统 arm架构 x86架构 linux mac等环境

electron v21版本以上统信UOS会提示gbm_bo_map错误&#xff0c;可使用v8~v21版本的electron 打包linux包需要再linux系统下运行编译&#xff0c;arch可以指定架构 如果要在统信uos上运行&#xff0c;需要打包成deb格式&#xff0c;在target中修改成deb 或者用第三方软件把app…

three.js捋文档的记录笔记(六):场景 几何体 材质 物体 相机 渲染器的简单理解

三维场景Scene const scene new THREE.Scene();物体形状&#xff1a;几何体 Geometry //创建一个长方体几何对象Geometry const geometry new THREE.BoxGeometry(100, 100, 100); 物体外观&#xff1a;材质Material //创建一个材质对象Material const material new THREE.M…

在Vue3中如何使用H.265视频流媒体播放器EasyPlayer.js?

H5无插件流媒体播放器EasyPlayer属于一款高效、精炼、稳定且免费的流媒体播放器&#xff0c;可支持多种流媒体协议播放&#xff0c;可支持H.264与H.265编码格式&#xff0c;性能稳定、播放流畅&#xff0c;能支持WebSocket-FLV、HTTP-FLV&#xff0c;HLS&#xff08;m3u8&#…

【AIGC调研系列】Grok-1.5v与Gpt-4v的效果对比

Grok-1.5V与GPT-4V的效果对比中&#xff0c;Grok-1.5V在多个领域和基准测试中表现优于GPT-4V。具体来说&#xff0c;Grok-1.5V在多学科推理、文档理解、科学图表处理等方面表现出色[1]。它还特别强调了其在理解物理世界的能力上的优势[4][8][12]&#xff0c;并且在RealWorldQA基…

农作物数据分析

,表中文名,表英文名,字段中文名,字段英文名,字段类型,字段描述,字段权限,字段权限描述,字段权限类型 0,cropinfo,作物信息表,作物ID,cropid,UUIDField, 1,cropinfo,作物信息表,作物名称,cropname,CharField, 2,cropinfo,作物信息表,品种,variety,CharField, 3,cropinfo,作物信息…

C语言面试题之奇偶链表

奇偶链表 实例要求 1、给定单链表的头节点 head &#xff0c;将所有索引为奇数的节点和索引为偶数的节点分别组合在一起&#xff0c;然后返回重新排序的列表&#xff1b;2、第一个节点的索引被认为是 奇数 &#xff0c; 第二个节点的索引为 偶数 &#xff0c;以此类推&#x…

单链表接口函数的实现(增删查改)

一、单链表的实现形式以及接口函数的声明 #include<stdio.h> #include<stdlib.h> #include<assert.h> typedef int DataType ;typedef struct SListNode {DataType data;struct SListNode* next; }SLTNODE; void SLTPrint(SLTNODE* phead);//打印链表 SLTNO…

Wpf 使用 Prism 实战开发Day20

备忘录功能页面完善以及优化 备忘录功能基本跟前一章节的待办事项差不多一至&#xff0c;就不再做过多的笔述了 一.备忘录功能完整页面源码 MemoView.xaml <UserControl x:Class"MyToDo.Views.MemoView"xmlns"http://schemas.microsoft.com/winfx/2006/xam…

33、链表-排序链表

思路&#xff1a; 首先排序可以使用集合将所有节点放入集合中&#xff0c;然后再根据每个节点值进行排序。这个可以很容易做到&#xff0c;不再赘述 其次就是直接在链表上排序&#xff0c;如何排序可以使用归并排序的方式&#xff0c;代码如下&#xff1a; class Solution {…

opencv | 编译缺失ippicv相关文件解决方案

1.执行cmake后&#xff0c;查看控制台输出信息 ~/VM_data/opencv-4.9.0$ cd buile_temp ~/VM_data/opencv-4.9.0/buile_temp$ cmake ..2.去浏览器打开链接&#xff0c;下载对应的压缩包&#xff0c;解压到 路径&#xff1a;/3rdparty/ippicv/

CSS3 animation-delay 属性

CSS3 animation-delay 属性 实例 等待两秒&#xff0c;然后开始动画&#xff1a; animation-delay:2s; -webkit-animation-delay:2s; /* Safari 和 Chrome */标签定义及使用说明 animation-delay 属性定义动画什么时候开始。 animation-delay 值单位可以是秒&#xff08;s&…

Java多线程(一些常用方法

今天学了一点多线程&#xff0c;感觉有点乱乱的 一.有三种方法可以实现多线程 1.继承Thread类&#xff1b; 直接继承Thread类&#xff0c;重写run方法 package a0415; //第一种执行方法&#xff08;继承Thread类的方法进行实现&#xff09; public class Test1 {public sta…