1 云原生应用与传统应用的区别
(1)可预测性:传统应用不可预测,应用程序的架构和开发方式独特,需要更长的时间来构建和批量发布,只能逐步扩展。而云原生应用可预测,遵循一个框架或原则,应用使用高度自动化、容器驱动的基础设施云平台进行构建,旨在通过可预测的行为最大化应用的弹性。
(2)操作系统:传统应用操作系统依赖,在应用程序和底层操作系统之间依赖关系紧密。
而云原生应用操作系统抽象,允许开发人员将平台作为底层基础设施依赖的抽象,只需使用平台提供的功能和服务,忽略底层的实现细节。
(3)资源利用:传统应用资源浪费,传统架构按业务流量高峰做常备冗余部署资源,其他时期资源浪费严重。而云原生应用精益的资源,提供自动化基础设施的配置,部署时根据应用程序需求动态地分配资源。
(4)部门协同:传统应用部门独立,开发、运营、维护部门相互独立缺少协同。 而云原生应用组织融合,简化了 DevOps
的实现,包括人员、流程和工具的组合,达到组合更好的协同工作。
(5)开发方式:传统应用采用瀑布开发方式,团队定期发布软件,间隔周期较长且影响客户使用。
而云原生应用采用持续交付的方式,快速发布软件的组织得到快速反馈循环,有效地响应客户需求。
(6)扩展方式:传统应用手动化扩展,传统架构依赖操作人员手动扩展,效率教低。而云原生应用自动化扩展,云原生是建立在传统面向系统虚拟化的编排管理之上的自动化。
(7)恢复速度:传统应用恢复缓慢,虚拟机启动/关闭速度很慢,基于虚拟机的基础设施缓慢而低效。
而云原生应用恢复迅速,容器的运行环境和编排管理是在虚拟机之上提供动态的的虚拟化层,动态地管理跨虚拟机集群的容器,故障时提供弹性伸缩和恢复/重启。
(8)系统耦合:传统应用系统紧耦合,单体架构将各类捆绑在一个部署包中,导致开发和部署过程中丧失敏捷性,无法独立的部署、发布更新、重启。而云原生应用系统松耦合,微服务架构将应用程序分解为小的、松散耦合的、独立的服务。
![云原生应用 云原生应用](//ziboxinyan.com/FileUpload/ueditor_s/upload/2022-1/11/6377750633500408299954764.png)
2 云原生应用的关键技术
云原生技术生态逐渐的扩充和发展,已经从容器、微服务、DevOps
等技术领域扩展至底层技术、编排及管理技术、安全技术、监测分析技术以及场景化应用等众多分支,初步形成了支撑应用云原生化构建的全生命周期技术链。云原生的代表技术包括容器、DevOps、微服务、服务网格等。
(1)
容器:容器是将进程有效的划分一个独立空间,这样就可以在独立的空间之间平衡资源使用冲突的技术。本质上,容器是―种特殊的进程,其核心功能是通过约束和修改进程的动态表现创造出一个“边界”,此外,其资源限制能力、以及基于镜像功能表现出的“强一致性”,都使得容器技术成为云原生最关键的底层技术之一。
(2) 微服务:Martin
Fowler将微服务架构定义为一种架构模式/架构风格,将单独的应用程序开发为一套小服务并独立运行在自己的进程中,相互之间使用HTTP
API等轻量级机制通信。这些服务围绕着具体业务进行构建,通过完全自动化部署机制来独立部署,并可使用不同的编程语言书写,以及不同数据存储技术,并保持最低限度的集中式管理。
(3) DevOps:随着云原生开源生态不断完善、以及复杂功能不断下沉到云,基本统一了软件部署和运维的基本模式。在
DevOps之前,从业人员使用瀑布模型或敏捷开发模型进行软件项目开发。DevOps作为Development和
Operations的组合,被定义为实现软件开发和IT团队之间流程自动化的一组实践,这些实践建立在团队之间协作文化的基础上,填补了开发端和运维端之间的信息鸿沟,以便更快、更可靠地构建、测试和发布软件,目前已经成为主流的软件开发交付模式。
(4) Service Mesh:服务网格,在云原生应用复杂的服务拓扑结构中,Service
Mesh是作为基础设施层,负责在这些拓扑结构中实现请求的可靠传递。Service Mesh
通过在请求调用的路径中增加Sidecar,将原本由客户端完成的复杂功能下沉到Sidecar
中,实现对客户端的简化和服务间通信控制权的转移,当系统中存在大量服务时,服务间的调用关系表现为网状,这也是服务网格名称的由来。
![云原生技术 云原生技术](//ziboxinyan.com/FileUpload/ueditor_s/upload/2022-1/11/63777506605619.png)
来源:《InfoQ:2021 云原生的技术探索与落地实践(26页).pdf》
推荐阅读:
云原生是什么?技术的特点有哪些?和传统应用的区别是什么?
《云原生产业联盟:云原生发展白皮书(53页).pdf》
《艾瑞咨询:2021年云原生下的智能营销研究报告(46页).pdf》
《绿盟科技:2020云原生安全技术报告(87页).pdf》