细数值得关注的5个云原生技术有哪些?

2022-05-06

186

云原生主要由一系列技术支撑起来的,这充分说明了技术的重要性,那么代表技术主要包括容器技术、服务网格、微服务、不可变基础设施和声明式 API。其中包括的这五个云原生技术都值得我们关注。



一:微服务

微服务是为了解决传统单体应用的缺点而诞生的,它是一种分布式架构设计理念。从而形成微服务架构。它把应用程序中的具体功能独立出来,抽象为『服务』。一个微服务就是一个独立的实体,可以独立的部署在 PAAS 平台上,也可以作为一个独立的进程在主机中运行。为了推动细粒度服务的使用,这些服务要能协同工作,每个服务都有自己的生命周期。服务之间可以通过网关 API、RPC(远程服务调用)、SideCar(后续文章会介绍) 等多种方式访问,修改一个服务不会影响其它服务。关于微服务,我之前的文章比较详细地介绍过:从单体到微服务,论软件系统如何逐步地进行解耦。


二:声明式设计

Declarative(声明式设计)是相对 Imperative 或 Procedural(过程式设计)而言的。在 Declarative 中,我们描述的是目标状态(Goal State),而在 Imperative 模式中,我们描述的是一系列的动作。这一系列的动作如果被正确的顺利执行,最终结果是这个事物达到了我们期望的目标状态的。SQL 其实就是一种常见的声明式『编程语言』,它能够让开发者自己去指定想要的数据是什么。


三:不可变基础设施

不可变基础设施里的“不可变”非常类似于程序设计中的“不可变”概念。程序设计中,不可变变量就是在完成赋值后就不能发生更改,只能创建新的来整体替换旧的。由于具有这样的特性这种变量可以在并发环境下安全的使用。对于基础设施的不可变性,最基本的就是指运行服务的服务器在完成部署后,就不再进行更改。


四:服务网格

服务网格作为云原生应用中比较独立的一层,所以它起到了一些比较稳定的作用。在实际场景中,一个云原生应用由多个服务组成;每个服务又有多个具体的例子,并且每个实例的状态在类似Kubernetes这样的编排器中一直都在变化。云原生服务网格通过为每个服务管理它们,提供性能和可靠性保证。不管怎么说,它还能够提供监控、校验、路由、健康检查、容错、测试等功能。



五:容器

面对操作系统而言:容器就是一个视图隔离、资源可限制、独立文件系统的进程集合。所谓“视图隔离”就是能够看到部分进程以及具有独立的主机名等;控制资源使用率则是可以对于内存大小以及 CPU 使用个数等进行限制。容器就是一个进程集合,它将系统的其他资源隔离开来,具有自己独立的资源视图。容器意味着环境隔离和可重复性。开发人员只需为应用创建一次运行环境,然后打包成容器便可在其他机器上运行。另外,容器环境与所在的 Host 环境是隔离的,就像虚拟机一样,但更快更简单。



以上的五个关于云原生技术,可以让我们知道云原生技术可以充分发挥云计算平台的优势的同时,可以最大限度的减少对开发效率的影响,实现稳定而高效的系统。它是不断发展的,也是一个不断更新迭代的过程,相应的开发习惯和方法也会跟着改变。

技术交流
我们建了一个云原生技术交流群,其中有来自Oracle、Citrix、华为、腾讯等国内外云计算专家,立即扫码,拉你进群。目前已有1000+开发者加入我们......
云原生厂商 云原生技术服务商
在云原生时代,行云创新致力于通过赋能开发者,实现企业快速迭代与交付,大幅提升创新效率。
免费试用