云原生架构 基于云原生技术,指将 云应用中的非业务代码部分进行最大化的剥离,让 云设施接管项目中大量非功能特性(如弹性、韧性、安全、可观测性和灰度等)。把质量属性 和 业务功能完全分离,我们自己的公司只关注业务代码,至于质量属性交给云。
云原生包含:业务代码、三方软件 和 处理非功能特性的代码。把这些交给IaaS和PaaS完成。
微服务约束:
无服务器技术(Server less)因为屏蔽了服务器的各种运维难度。有以下特点:
函数计算(FasS)最具有代表性的产品。把应用逻辑拆分为多个函数,每个函数通过事件方式触发。
无服务器主要关注:计算资源弹性调度、负载均衡和流控、安全性。
服务网格ServiceMesh是分布式应用在微服务软件架构之上发展起来的新技术(中间件技术),实现应用于平台基础设施的解耦。意味着开发者无需关注微服务相关问题而聚焦于业务逻辑本身。
旅行公司云原生改造项目
面临问题:公司主体两个公司合并,技术体系不同,需要合二为一。节假日高并发流量。
改造第一阶段:
将多套旧系统合并,收拢到一套以云原生应用为核心的私有化云平台上,通过IaaS和PaaS等实现虚拟化封装、切割。
随着服务器集群的扩大,这时候机器频繁出现故障。
改造第二阶段:
基于共有云、私有云和离线专属云集群等新型计算环境,构建成具有弹性的云原生技术。
改造第三阶段:
通过基础组件、服务的云原生改造、服务依赖梳理和定义,应用不需要考虑底层资源、机房、运行等因素。
最底层则是 硬件基础设置层。
往上则是操作系统这一层:linux和windows。(现在还可以基础安卓,IOS)
操作系统层网上则是IaaS基础层:计算(CPI/GPU),容器网络,存储,运行时。
之后则是云原生技术,通过api接口调用云原生平台。