虎年云原生落地技术趋势

今天是立春,虎年第一天。去年我写过一篇 牛年 dotnet云原生技术趋势[1],今天再来写一篇虎年云原生落地技术趋势,去年局限在.NET 平台上的云原生落地,我今年在去年探索云原生落地的基础上从多语言云原生技术落地的趋势来谈谈。

在 2020 年的时候,云原生理念就被提到得越来越多,但是真正呈现出爆发形态、真正被所有的云厂商、用户广泛使用的是在 2021 年。国内三大云厂商都在2020年发布了云原生2.0 路线图,而且这些头部厂商的云原生落地到达了一个里程碑式的关键节点,代表性事件就是各大互联网公司基本完成了云原生化,所有业务百分之百上云。云原生的核心技术如容器、微服务、服务网格等的可用性和成熟度都已经可以支撑起头部互联网的体量。每个行业的云原生进度不一样,头部互联网公司跑得比较靠前,基本都做到了全面云原生化。未来几年,其他行业会逐步追随互联网的脚步全面走向云原生化。

86baefb101f1f66a0486b615a1534ab4.png

随着直播、5G、IoT 等领域的兴起,让业务对于云的形态需求更高,大家希望云能够更贴近数据的产生点,因此相应的边缘云、本地云、混合云的形态越来越多。现在,整个云计算有一个很重要的趋势,就是呈现一云多形态的模式,用户在各个地方都能用到云计算的能力。但这也对云的基础设施提出了比较大的挑战。用户以前就是用一朵云,管理复杂度是可以接受,但多朵云形态后,挑战难度就比较大了。

云原生技术天然能够比较好地解决云变成多形态后的统一界面管理问题,包括混合云带来的复杂度挑战。下面两张图是我在2021年实践云原生的一个路线图总结:

e7db266e49ce57595a92d2cc58e5fd05.png

66c6bcdde876c257bff0df814f365de3.png

CNCF 里面有非常多的开源项目,里面的项目已经超过一千了。这些开源项目围绕着云计算在展开竞争,CNCF孵化项目成熟度模型分为三个级别,分别对应到鸿沟理论划分的三个目标客群:

  • 沙箱级(Sandbox):对应创新者群体

  • 孵化级(Incubating):对应早期使用者群体

  • 毕业级(Graduated):对应早期多数群体

outside_default.png

项目从孵化级向毕业级过渡最为关键,需要跨越鸿沟(The Chasm)。在此跨越过程中,孵化项目需要向有影响力的公司和组织证明自己提供的能力能够改进生产流程、提升效率、降低成本,并且足够稳定可靠以保证在生产环境使用。截至2022年2月3日,从CNCF成功毕业的项目有16个,进入孵化级别的是27个项目,具体参看CNCF的毕业和孵化项目[2]。

在2022年云原生在各行各业开始进入全面落地阶段,CNCF在推进云原生发展过程中已经形成了几大比较关键的标准:

02cfb70d13c0e8d9cdb07dc799fd4242.png

最早出现的是容器,解决了应用打包标准化和应用发布标准化的问题。在此之前,虚拟机等方式的标准化程度是不够的,Docker 终结了这一问题。随着 Docker 的不断演进和推广,在应用编排、资源调度等又出现了新的问题,当时的 Docker  Swarm、Mesos 和 Kubernetes 互相竞争,最后 Kubernetes 胜出,并带来了新的资源编排方面的事实标准。现在 Kubernetes 已经成为一个事实标准。而应用层之前也是百家争鸣的情况,每个企业都在做自己的云原生应用,现在有越来越多的开源标准出现,如OAM(Open  Application  Model) 和SMI(Service Mesh Interface)等,大家都在尝试定义应用层的标准, OAM 和 SMI 尚未形成事实标准,他们有成为事实标准的潜力,2022年就是非常关键的一年,在云原生项目落地的过程中以OAM 标准的代表项目Dapr 目前在多运行时框架领域是一个非常耀眼的项目,落地的案例也非常多了。云原生的多语言是必然趋势。国内后端开发最火的语言是Java,已经有很多公司(腾讯、字节)在用 Go 作为主要开发语言,PHP 的使用也非常广泛。每种语言的特点不太一样,很多企业会根据业务需要选择一种合适的语言。这时可能会出现多种语言,业务部门觉得用 Java/C#比较好,偏前端的想要 PHP 或者 Node.js,多语言在企业内部越来越普遍。开发人员想用什么语言就用什么语言,但是运维人员就会面临很大的挑战,如多语言环境下的服务治理怎么能统一做等。Java 之前在阿里基本处于统治地位,但现在阿里内部也多语言了。阿里收购了非常多的企业,如饿了么、飞猪、高德等,但不可能让所有并购进来的公司都改变编程语言,这是很难的。由于公司并购,阿里内的编程语言已经变得多元化了。企业足够大的话,就一定是多语言的。如果是初创公司或者体量还不够大,语言统一确实能带来便捷。所以阿里和微软主导了开源项目Dapr,详细内容可以参看 Dapr 在阿里云原生的实践[3], 高德 Serverless 平台建设及实践[4]。

云原生实践在支持多语言这个技术方案上还有Service Mesh,Service Mesh出现的时间上比Dapr 更长久, 目前也处于混战阶段,Istio 并不在CNCF 社区里,微软联合众多厂商在CNCF里提出了SMI(Service Mesh Interface), 主要的Service Mesh框架都实现了SMI,微软主导的Open Service Mesh 遵循SMI 规范,最近也发布了1.0 版本,我昨天体验后写了一篇体验文章 体验 正式发布 的OSM v1.0.0 版本[5],Open Service Mesh 相对于Istio 来说,确实很轻量。SMI 处理了所有你期望的标准服务 Mesh 功能,包括使用 mTLS 确保服务之间的通信安全,管理访问控制策略,服务监控等,Dapr 和 OSM 是非常好的一个实践多运行时架构的组合。

80b09a7404bd91a33686e7d4118e58ae.png

国内有很多企业已经在虚拟机、物理机环境使用Spring Cloud,这些企业转向云原生时,如果还是简单把spring cloud 部署到kubernetes 环境,spring cloud的很多基础架构能力是和kubernetes相重叠的,想充分享受kubernetes 带来的自动化方面的能力,最好的选择是卸下Spring Cloud,通过Dapr提供的分布式能力让解决方案在各种环境中自由适配,而且Spring Boot 版本可自主升级,不再与Spring Cloud 存在兼容性问题。

b0a58947414b185ca1261ef97441b3c0.png

我看到有些企业是为了技术而去做云原生,这样最后不一定有好的结果,更多时候还是先从业务价值角度出发考虑要做什么事情,再选择相应的技术。一方面,企业有业务驱动,便会有足够多的资源投入。另一方面,企业在做技术选型和落地的时候会有足够多的实践。从领域来讲,我给大家的建议就是先把基础打好,之后再完善一些生产必备的技能。容器技术是所有的基石,在这之后是一些比较关键的像可观测性、CICD、微服务等企业内部落地真正需要的一些关键技术。

  • [1]牛年dotnet云原生技术趋势:https://www.cnblogs.com/shanyou/p/14398499.html

  • [2]CNCF的毕业和孵化项目:https://www.cncf.io/projects/

  • [3]Dapr 在阿里云原生的实践:https://developer.aliyun.com/article/785943 

  • [4]高德 Serverless 平台建设及实践:https://xie.infoq.cn/article/686a83fccba14504517ec6fe5 

  • [5]体验 正式发布 的OSM v1.0.0 版本 : https://www.cnblogs.com/shanyou/p/15861828.html

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

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

相关文章

WdatePicker 设置日期第一个比第二个的日期小

WdatePicker 设置日期第一个比第二个的日期小 可以设置&#xff0c;日期只显示某一天的&#xff0c;比如只显示周一&#xff0c;和周日 <input id"Text1" class"Wdate" onFocus"WdatePicker({disabledDays:[0,2,3,4,5,6],maxDate:#F{$dp.$D(\Text2…

excel中调用python程序_一篇文章带你使用Python搞定对Excel表的读写和处理

文章目录一、我的需求二、代码三、总结一、我的需求我想要excel 的最后1列由列表形式转换为数值类型​可以看到最后一列有的是列表&#xff0c;有的直接是数值&#xff0c;想要整个列表中的内容都转为数值类型二、代码import openpyxldef write_excel_xlsx():# 写入数据准备wor…

07-狄克斯特拉算法

数据结构和算法 基于《算法图解》—Aditya Bhargava 和《数据结构》—严蔚敏 第7章 狄克斯特拉算法 上一章的广度优先搜索&#xff0c;找出的是段数最少的路径&#xff1b; 本章狄克斯特拉算法&#xff0c;找出的是最快的路径。 7.1 使用狄克斯特拉算法 步骤&#xff1a; 第…

linux c之使用共享内存实现进程间通信

这篇博客有别人的也有自己改的,作为读书笔记,勿喷。 1、共享内存的介绍 共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段…

【转】你没有变强是因为你一直很舒服

这个世界上有两种人&#xff0c;一种人是强者&#xff0c;一种人是弱者。强者给自己找不适&#xff0c;弱者给自己找舒适。想要变得更强&#xff0c;就必须要学会强者的必备技能&#xff0c;那就是让不适变得舒适。 如果你学会了这种技能&#xff0c;你可以搞定很多事情&#x…

linux网络编程之套接字(套接口)、ip、端口理解

1、套接字、ip、端口介绍 1)、套接字 源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务。 它是网络通信过程中端点的抽象表示,包含进行网络通信必需的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远…

聊聊mysql执行过程

在项目开发当中 &#xff0c;很多时候&#xff0c;我们的数据库应用优化都是从表层到里层的一个过程。比如一个查询写下来 &#xff0c;我们的优化方向大多时候都是先看方法执行的时间长短&#xff0c;然后再决定是否去优化它&#xff0c;下意识的第一步操作都是看是否命中索引…

01. Node js Hello world

2019独角兽企业重金招聘Python工程师标准>>> 01. Node js Hello world 环境安装 官网http://nodejs.org/ Node.js is a platform built on Chromes JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, no…

异常检测之浅谈入侵检测

打开微信扫一扫&#xff0c;关注微信公众号【数据与算法联盟】 转载请注明出处&#xff1a;http://blog.csdn.net/gamer_gyt 博主微博&#xff1a;http://weibo.com/234654758 Github&#xff1a;https://github.com/thinkgamer前言 由于业务关系&#xff0c;最近一段时间一直在…

蓝宝石rx580gpuz参数_蓝宝石RX580 2048SP 4G D5 白金版 OC游戏测试

今年&#xff0c;显卡的价格可谓是一路飙升&#xff0c;老黄家新卡价格翻番&#xff0c;甜点级新卡迟迟未发&#xff0c;而市场上则鱼龙混杂&#xff0c;那么为什么不来看看这款蓝宝石 RX580 2048SP 4G 白金版 OC&#xff1f;蓝宝石 RX580 2048SP 4G 白金版 OC是近期推出的一款…

08-贪婪算法

数据结构和算法 基于《算法图解》—Aditya Bhargava 和《数据结构》—严蔚敏 第8章 贪婪算法 贪婪算法的优点&#xff1a; 简单易行&#xff0c;让每一步都选择局部最优解&#xff0c;最终得到的就是全局最优解。 贪婪算法是近似算法&#xff1a;在获得精确解需要的时间太长时…

企业知识库在跨地域团队协作中的价值

随着全球化进程的不断加速&#xff0c;越来越多的企业开始面临跨地域协作的挑战。在这种背景下&#xff0c;企业知识库作为一种重要的知识管理工具&#xff0c;对于提高团队协作效率、促进知识共享与创新具有不可替代的价值。接下来就说一下知识库在跨地域团队协作中的重要性及…

MySQL知识总结(二)基本语句总结

1. 数据库 查看数据库 show databases; 使用数据库 use [数据库名] 如&#xff1a;use mysql 创建数据库 CREATE DATABASE bruce DEFAULT CHARACTER SET utf8 删除数据库 drop database bruce 查询mysql版本 select version(); 查询当前用户 select user(); 显示当前库的所有表…

linux网络编程之地址结构sockaddr和sockaddr_in的区别

1、介绍sockaddr 结构体struct sockaddr在/usr/include/linux/socket.h中定义 struct sockaddr {unsigned short sa_family; // 2 bytes address family, AF_xxxchar sa_data[14]; // 14 bytes of protocol address }; 2、介绍sockaddr_in 结构体stru…

Asp-Net-Core开发笔记:接口返回json对象出现套娃递归问题

前言看了下推送记录&#xff0c;一个月前&#xff0c;OK&#xff0c;我又变成月更了o(╯□╰)o&#xff0c;这绝对不行&#xff01;[○&#xff65;&#xff40;Д&#xff65; ○]所以今天来更新了其实不是我懒得更新或者是太忙&#xff0c;其实是最近在写一篇很长的博客&…

spring之二——使用maven创建一个java project

2019独角兽企业重金招聘Python工程师标准>>> maven的安装及Eclipse maven插件安装这里不再说了&#xff0c;安装可以看这篇博客&#xff1a; http://www.blogjava.net/fancydeepin/archive/2012/07/13/eclipse_maven3_plugin.html 需要注意的是&#xff0c;maven在w…

自从装了windows神器,再也不用羡慕mac了

1. 命令行神器 1.1 GOW Gow&#xff08;Gnu On Windows&#xff09;是Cygwin的轻量级替代品。 它使用一个方便的NSIS安装程序&#xff0c;安装超过100个非常有用的开源UNIX应用程序&#xff0c;编译为本机win32二进制文件。 它被设计为尽可能小&#xff0c;大约18 MB&#xff…

供销大集长期持有_谁是下一个供销大集?(附股)

昨天我们在文章分析了芯片这波行情的几个细节&#xff0c;觉得以芯片股的热点状态还是很健康的&#xff0c;以芯片为首的自主可控还有得玩。今天&#xff0c;这个方向又有了新的变化&#xff0c;结合这些变化&#xff0c;再说说我们的跟踪思路。昨天芯片股出现了高低位切换的现…

linux网络编程之网络字节序、主机字节序、大端、小端

1、主机字节序介绍 不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机字节序,存储方式有2种 1)、大端模式 大端模式(Big-Endian)就是高位字节排放在内存的低地址端(即该值的起始地址),低位字节排放在内存的高地址端 2 ) 、小端模式 小端存储在…

第1章 绪论

《数据结构》学习笔记 第1章 绪论 1.1 数据结构的研究内容 计算机计算数值时&#xff0c;一般经过一下步骤&#xff1a; 1.从具体问题抽象出数学模型&#xff08;实质是分析问题&#xff09;。 2.设计一个解次数学模型的算法。 3.编写程序&#xff0c;进行测试、调试&#xf…