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

从厨房到云端:从预制菜到云原生

小美:小猿,你最近在忙什么呢?看你总是加班。

小猿:唉,公司在搞什么“云原生”改造,说是要把我们的应用搬到云上,搞得我头都大了。

小美:云原生?听起来很高大上啊!不过,这跟你们以前的应用有什么区别吗?

小猿:以前我们开发应用,就像开一家传统餐厅,从买菜、切菜、炒菜到上菜,每一步都得自己动手。

现在搞云原生,就像用预制菜开餐厅,省时省力,还能快速应对顾客的需求。


 

一. 什么是云原生技术?

可以看到 Google 的统计数据,云原生大概从 2015 年开始就开始一直在上升。

1.1、 那么到底什么是云原生呢?

云原生(Cloud Native)是一种构建和运行应用程序的方法,它的目标是让应用能够更好地利用云计算的优势,比如弹性扩展、快速部署和高效运维。简单来说,云原生就是让应用“生在云上,长在云上”,充分利用云计算的特性。

 

最早在2010年被提出,但真正开始“火起来”是在2015年之后,主要得益于容器技术(如Docker)和容器编排工具(如Kubernetes)的普及。

 

云原生架构相比较传统架构进了一大步,从业务代码中剥离了大量 非功能性特性(不会是所有,比如易用性还不能剥离)到 IaaS 和 PaaS 中,从而减少了业务代码开发人员的技术关注范围,通过云厂商的专业性提升了应用的非功能性能力。

 

1.2、云原生的核心思想

 

 

云原生旨在实现应用程序的高可用性、弹性、可扩展性和自动化管理。核心思想主要包括以下几个方面:

  • 微服务架构:将应用程序拆分成多个小型、独立的服务单元,每个服务单元都可以独立部署、扩展和管理。
  • 容器化:将应用程序及其所有依赖项打包到容器中,实现更轻量级、可移植和一致的运行环境。
  • 持续交付:通过自动化的构建、测试和部署流程,确保软件能够快速、可靠地发布到生产环境。
  • DevOps实践:通过自动化工具和流程实现开发、测试、部署和运维的高度协同和持续交付。

上面或许介绍的比较俗套,都是概念性的东西,如果这么来写的话,可能好理解一些。

它就像是为云计算时代量身定制的“智能厨房”,它让应用程序的开发、部署和管理变得更高效、更灵活。它的核心理念是把一个大型应用拆分成多个小模块(微服务),每个模块都可以独立运行、扩展和维护,就像厨房里的每个厨师只负责一道菜,互不干扰。

1. 微服务:模块化的“小厨房”

传统的应用就像一个“大锅炖”,所有功能都混在一起,改动一个地方可能影响整个系统。而云原生把应用拆成多个“小厨房”(微服务),每个“小厨房”只负责一个功能,比如用户管理、支付系统等。这样,开发、测试和部署都变得更灵活。

2. 容器化:标准化的“外卖盒”

每个微服务都被打包成一个“外卖盒”(容器),里面包含了运行所需的所有材料(依赖项)。无论你是在家里、办公室还是餐厅打开这个“外卖盒”,味道都是一样的。容器化确保了应用在任何环境下都能稳定运行。

3. 持续交付:智能的“自动化厨房助手”

云原生还引入了“智能厨房助手”(自动化工具),比如 Kubernetes,它可以自动帮你部署、扩展和管理这些“外卖盒”。如果某个“小厨房”忙不过来,它会自动调配资源,确保整个系统高效运转。

4.DevOps:无缝的“厨房流水线”

云原生还强调 DevOps 实践,就像一条无缝的“厨房流水线”,从食材采购(开发)到上菜(部署)都实现了自动化。开发人员和运维人员可以紧密合作,快速迭代和交付新功能。

 

二、云原生的现状

Google、IBM等科技巨头共同成立云原生计算基金会(CNCF),华为、金山、阿里、腾讯等大厂持续加注云原生。

 

阿里云

2018年,阿里巴巴提出“全面上云且上云原生”战略。

 

华为云

华为云在2015年在Kubernetes社区发起了Federation项目,并在2020年发布了云原生技术平台Vessel和四大容器解决方案

 

 

三. 云原生的发展前景

越来越多的企业和组织开始采用云原生技术来构建和管理其应用程序,包括谷歌、亚马逊、微软等云服务提供商,以及许多创新型企业。在开源社区中,Kubernetes已经成为云原生技术的事实标准,众多的相关项目和工具也不断涌现。以上是Mordor Intelligence对云原生市场规模的预测。

 

未来,云原生技术将继续快速发展,从应用程序开发到部署和运维的整个生命周期中都将得到广泛的应用。随着人工智能、大数据等技术的快速发展,云原生技术也将与这些技术结合,共同推动数字化转型和创新的发展。

云原生就像是一辆“电动跑车”,正在快速驶入未来的技术赛道。随着云计算、大数据和人工智能的普及,传统的应用开发方式已经跟不上时代的步伐,而云原生正是解决这些问题的“利器”。

 

我是栈江湖,如果你喜欢此文章,不要忘记点赞+关注

 

http://www.xdnf.cn/news/2888.html

相关文章:

  • kotlin flatMap 变换函数的特点和使用场景
  • SpringBoot Actuator未授权访问漏洞的全面解析与解决方案
  • 【uom】 0 配置文件(Cargo.toml)
  • vscode chrome调试怎么在所有浏览器都好使
  • jmeter-Beashell获取请求body data
  • 音视频之H.265/HEVC网络适配层
  • 打造惊艳的渐变色下划线动画:CSS实现详解
  • [C++]C++20协程的原理
  • 【MySQL】聚合查询 和 分组查询
  • 大脑、机器人与贝叶斯信念及AI推理
  • Spring MVC 进阶 - 拦截器、异常处理、数据校验
  • 【网络编程】UDP协议 和 Socket编程
  • Nginx核心功能
  • 数据一致性巡检总结:基于分桶采样的设计与实现
  • 青少年编程与数学 02-018 C++数据结构与算法 16课题、贪心算法
  • HCIA-Datacom 高阶:VLAN、VLANIF 与静态路由综合实验
  • 清华与智谱联合发布TTS模型GLM-4-Voice,支持情绪、语气控制,多语言,实时效果很不错~
  • nginx 核心功能
  • Python异常抛出指南
  • vue3使用<el-date-picker分别设置开始时间和结束时间时,设置开始时间晚于当前时间,开始时间早于结束时间,结束时间晚于开始时间
  • 完整的 SSL 证书生成与 Spring Boot 配置流程
  • n8n部署docker本地化备份和数据持久化和迁移问题
  • timerfd定时器时间轮定时器
  • 政策支持与市场驱动:充电桩可持续发展的双轮引擎
  • Linux权限管理
  • 可解释人工智能(XAI):让机器决策透明化
  • 【Java学习笔记】克隆对象
  • yum install 失败
  • JavaScript高级进阶(四)
  • Easy系列PLC高速计数器比较指令