云原生,开发者的黄金时代

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
性能测试 PTS,5000VUM额度
简介: 如果说云是一种信仰,那么云原生就是一种态度,时代呼唤人人都应成为云原生开发者。

image.png


作者 |  丁宇(叔同),阿里巴巴研究员,阿里云云原生应用平台负责人


对开发者而言,这是一个最好的时代。


数字产业蓬勃发展,传统云计算产业走向成熟,大数据、物联网、人工智能、区块链各种新兴技术百花齐放,开发者大有用武之地。但与此同时,新技术层出不穷的涌现,也让开发者对现有技术能力产生焦虑,对于未来道路的选择变得困惑。


2021 年 3 月,阿里云委托 Forrester 咨询公司对中国开发者群体进行调研,通过线上问卷方式调研了 422 名包括企业内部应用开发、测试、运维等在内的不同角色人员,以及独立开发者在内的广泛开发者群体。同时为了充分揭示云原生时代对开发者群体带来的价值、机遇以及需要关注的重点云原生技术,Forrester 还访谈了企业 CTO、高校教授、开源社区专家以及开发者社区意见领袖(KOL)在内的 9 位专家。(文末下载报告)


不可否认的是,云原生让开发者看到了更多可能。云原生技术的演进为开发者提供了更加“聪明的方式”去工作,即充分利用云原生平台的组件及工具链,屏蔽底层技术并节省不必要的时间花费,更加专注地聚焦业务价值创造以及创新。如果说云是一种信仰,那么云原生就是一种态度,时代呼唤人人都应成为云原生开发者。



开发者的演进路线


纵观三十年的发展历程,一方面广大中国开发者持续发挥着巨大的经济和社会价值,另一方面社会经济的发展也在改变着全社会创造价值和实现价值的方式,并持续带来软件和应用研发交付模式的变革,从而为开发者提供一个更加广阔的空间,来充分释放想象力和创造力。


开发者的构成从最初以传统开发者为代表的群体,到逐渐兴起的云上开发者群体,再到日渐壮大的云原生开发者群体。开发者自身的使命也从曾经的企业信息化战略执行者,转变为如今的数字化转型业务赋能者,未来将进一步成为数字创新的技术引领者。


传统开发者是企业信息化战略的执行力量。在 1990 至 2010 年的二十年间,聚光灯下的掌声与赞美往往与他们无关,但却是他们在切实执行着企业决策者们的业务战略。传统开发者通过各种信息系统应用的开发与实施,帮助企业构建信息基础设施与业务平台,实现内部用户与外部客户所需的业务功能,帮助企业应对快速变化的市场环境,并不断开拓新的业务领域和新的商业模式。


虽然当前各行业的数字化转型如火如荼,但其实很多行业仍以传统的应用构建和开发模式为主。例如瀑布式开发模式,一方面要进行功能设计、开发和测试;另一方面要进行技术选型、资源准备、组件调试、持续构建和版本部署等,整个过程周期长、技术复杂,并且需要配备大量的开发团队。


随着云计算技术的成熟,传统的开发模式已经不能满足时代的发展需要,开发者开始借助云平台的力量。云上开发可以有效确保研发与运维团队的现代化水平,从平台工具层面推动研发与运维技术能力的不断提升。云上开发带来的技术能力标准化,大幅提升了开发者的工作效率,包括开发与测试环境的配置效率,功能组件、业务系统的软硬件开发效率,以及服务化、组件化、灰度化的发布与部署效率等。


但我们也看到了一个现象,多数实现应用上云的企业,其本身的应用开发模式并未实现基础性转变。在这些企业中,开发者对云计算的使用依然是局限于孤立场景,诸如基础设施层面或者特定业务应用。同时,云平台本身在开发工具链、集成服务方面的不完善也影响了云上开发模式被更多的开发者群体接纳。


紧接着,以 Docker 为代表的容器技术开始兴起,随后 K8s 厚积薄发,在开发者对性能、效率、可迁移性、可管理性和便捷性永无止境的追求中,云原生技术应运而生。云原生使得云上开发模式拥有了更加强大的工具以及新的应用构建与创新思维。当然,云原生开发者不仅仅体现在对 Docker、K8s 等新兴技术的掌握与运用,更是通过云原生技术,实现对底层技术复杂性的屏蔽,做到更好的应用集成与交付,从而帮助企业创新。Forrester 调研显示,73% 的开发者认为,云原生可以使得更多企业内部人员成为开发者。



云原生驱动新开发时代的到来


云原生是云计算的再升级。云原生包含大量新的 PaaS 层技术和新的开发理念,是释放云计算价值的最短路径,也推动着云计算的再升级。整个云原生技术栈都是基于开源、开放的技术标准,CNCF 也在致力于让云原生技术标准化,为用户提供使用云服务的标准界面,避免厂商锁定。


进一步看基于云原生技术和云原生架构重构或重写的应用。比如,基于服务网格或 Serverless 的应用,它们天然具备水平扩展的能力,可随时应对互联网时代高速增长的业务规模,同时还内置了高可用能力,因此应用无须关注分布式环境下的高可用方案。


云原生不仅是对使用云的应用架构的再升级,也是对云平台的技术和云服务的再升级。从构建云原生应用的角度,云原生对应用的重构体现在应用开发的整个生命周期中。


在这个过程中,我们看到了一些趋势:比如容器+K8s 成为技术基础设施。容器让应用运行时与环境解耦,K8s 让资源管理和基础设施解耦,向下封装基础设施层,屏蔽底层架构差异性,连接异构算力,云边端一体化,构建分布式云;向上支撑多种异构工作负载,分布式、弹性可扩展、Mesh 化解耦,推动应用架构现代化演进。可以说,容器和K8s已经变成了云计算时代的分布式操作系统。


除了在开发模式上的改变,我们也看到,在云原生的驱动下,一个全云开发的时代正在到来。


2021 年底,68% 的机构会在生产环境中使用容器,比 2020 年增长 39%,比两年前增长 240%。阿里巴巴在 2016 年实现了 100% 容器化,而在 2021 年,68% 的企业将在生产环境中使用容器。可以确定的是,容器已经成为一个绝对的趋势。

开发者云上开发意愿度达到 68%。大量开发者已经感知到云上开发所带来的变化,包括前端/后端,网页、移动端、小程序,逻辑、模型、组件等,云上开发带来了生产力的改进,效率的大幅提升等。


到 2021 年底,25% 的开发者将使用 Serverless 产品。今天,阿里云已经开始大力投入 Serverless 研发,提供了函数计算 FC、Serverless 应用引擎 SAE、Serverless 容器服务 ASK、无服务器基础设施 ASI、弹性容器实例 ECI 等产品。同时,在开发者工具方便,阿里开源了业界首个 Serverless 开发者平台——Serverless Devs,通过该平台,开发者可以一键体验 Serverless 产品,极速部署 Serverless 项目。


从广大开发者的视角,一方面开发者可以明显感受到云平台从资源、能力到价值层面的流动性,为应用开发和系统运维带来了极大的便利;另一方面,开发者也曾饱受云上云下异构的开发技术、琐碎的开发工具与割裂的协作过程的困扰,无法完全在云端进行技术实践。


随着云原生的发展与成熟,相关产品与工具正在解决开发者面临的痛点。比如容器镜像的一致封装使开发者得以实现不同环境下的应用可迁移性;代码和配置的分离有效简化了开发人员的开发测试流程;无服务器计算能够帮助开发者快速开通开发和测试集群而无需复杂配置;CI/CD 跨云构建部署能力,让开发与运维人员确保异构环境下复杂应用的快速稳定迭代。


云效作为 DevOps一站式平台,将阿里巴巴多年总结的云原生开发模式融合到产品中,为广大开发者提供好用易用的云原生研发解决方案。开箱即用的云端 IDE、代码管理平台、CICD 流水线,让开发、测试、部署全流程与云原生底座平台无缝结合,进一步降低开发者上手云原生技术的门槛,加快云原生技术转型,大幅提升软件生产效率。


Dingtalk_20210817182307.jpg


在市场及技术发展的驱动下,企业应用及软件的开发与构建将走向云原生。同时,云原生开发平台的成熟也将反过来驱动更多的企业选择云原生。云原生开发模式将成为企业应用开发的必然选择。



布局开源生态,阿里云推动全云开发与实践


标准和开源加速了云原生,也推动了全云开发的更好落地。今天,阿里云在 GitHub 上开源项目总数超过 2600+,涵盖了大数据、云计算、AI、中间件、容器、Serverless 等领域,拥有超过 30000+ Contributor,超百万 GitHub Star,位列中国企业开源社区 GitHub 贡献榜首。这其中,一些开源项目也成为了相关领域的事实标准。


其中,Dubbo 已经成为国内影响力最大、使用最广泛的开源微服务框架;RocketMQ 是国内首个互联网中间件的 Apache 顶级项目,也是常年霸榜国内最受欢迎的开源中间件项目。此外,我们还有应用管理引擎 KubeVela,去年刚开源的阿里巴巴第一个边缘计算项目 OpenYurt,分布式高可用领域的混沌工程工具 ChaosBlade,服务注册发现 Nacos 以及首个 Serverless 开发者平台 Serverless Devs 等。


面向整个技术社区,阿里云把研发多年的技术成果回馈给全球顶级基金会,如开放原子开源基金会、Apache 基金会等,阿里云致力于打造一个开放的、标准的、健康良性的技术生态。一位开发者想要基于云原生技术构建一套开源架构,完全可以在阿里云生态里找到自己的工具。阿里云已经服务了大量企业级头部的用户,同时正在构建一套开放标准的技术体系,服务于全球开发者。


企业上云是趋势。阿里巴巴在国内率先开源了自研 RocketMQ,并成为 Apache 顶级开源项目。RocketMQ 为用户提供了高性能、高可靠、低延迟的消息服务,成为业内流行的金融级业务消息首选方案。随着云原生技术的发展,全面云化已是大势所趋。众多企业对消息中间件的演进有着更深层次的诉求。我们将在社区和商业同期发布 RocketMQ 5.0,全新定义“消息、事件、流”一体化融合处理的新理念。RocketMQ 5.0将在基础架构云原生化、消息流式处理以及事件驱动三个方面带来变化。


首先,基于阿里云大规模生产实践的背景,RocketMQ 5.0 将提供面向多种场景、可调整的极简弹性架构,帮助企业在资源弹性、运维复杂度、业务生态创新等方面做好平衡;其次,RocketMQ 5.0 将围绕高价值消息数据提供全新轻量化设计的流式处理框架,方便企业和开发者就近处理消息计算和分析;最后,RocketMQ 5.0 会基于开放的标准,连接云服务和开源生态,并配合 Serverless 开发模式,为用户提供低代码、无服务器的下一代事件驱动架构服务。

参考文章:终于!RocketMQ发布5.0版本:架构大重构,代码变更比例高达60%


云原生最开始提出来的时候,是以资源集群管理与运维为切入点,但是今天如果要把所有的工作负载运行在一套基础设施之上,还缺乏对应用的管理。所以我们提出,以应用为中心,关注点分离,把开发运维基础设施、合作边界、协议、方法全部定义出来,也就是一站式应用管理与交付平台 KubeVela。今年 6 月,KubeVela 进入 CNCF Sandbox,目前镜像下载量突破 30 万次,拥有 20 多家全球企业客户。今年 OAM 也被信通院立项作为行业标准。


3.png


如今,越来越多的算力和业务开始下沉到距离数据源及终端用户更近的地方。随着规模、复杂度逐日攀升,边缘计算场景下的运维能力开始不堪重负。为了推动边缘计算和云原生领域协同发展,阿里云将边缘容器服务 ACK@Edge 核心框架 OpenYurt 向业界开源,并捐赠 CNCF 。秉持业界首创的 “非侵入式”理念,OpenYurt 拥有边缘计算全场景覆盖能力,成为生态兼容场景下的领域首选平台。其应用已覆盖包括 IoT、音视频、物流等数十个行业,让云原生变得无处不在。


2.png


云原生让开发者成为更好的自己



在这样一个快速变化的时代,每一位开发者以及希望转型成为开发者的个人,都需要敏锐地把握到时代发展的脉搏、企业数字化转型需求的变化以及技术发展的走向。同时更为重要的是,在自己的舒适区域以外,要能够看到各种挑战的同时,发现自身进一步成长的空间。


无论是刚刚步入职场的年轻人,还是即将步入中年的资深工程师,每个开发者都会遇到成长过程中特有的挑战,诸如:职业生涯挑战。面对着高负荷的工作以及家庭的负担,无法再和刚毕业年轻人比拼熬夜加班,而连续加班时的工作效率也越来越难以保证;想要提升自己的技能,但面对着汹涌而来的技术浪潮,无法再有足够的精力去分辨哪些是珍珠哪些是泡沫。


随着企业纷纷上云,底层基础设施与平台工具不断标准化、自动化和智能化,在传统的技术技能体系下,自己的工作越来越被同质化甚至边缘化,职业发展的焦虑和年龄一同与日俱增;当抬起头来放眼外部的世界,却发现很难找到自己的定位;或者好不容易找到期待的机会,却又发现自己的技术经验变得狭窄而陈旧。


在调研过程中,72% 受访者反馈面对快速变化的市场环境,需要掌握更多的业务与行业知识,70% 的受访者认为随着企业愈来愈注重客户体验,需要开发者掌握相关的客户体验知识。不仅如此,各种内外部因素均对开发者的技能及素质提出了更高的要求,迫切要求开发者加速自我转型。


1.png


云原生技术的演进为开发者带来了破局之道。云原生开发模式将成为未来应用开发的主流模式,并帮助开发者差异化个人技术竞争力。从容器/K8s、微服务、服务网格到事件驱动的无服务器计算应用,从应用目录、服务目录与镜像仓库的管理到公有云、私有云、边缘网络的部署,不断发展的云原生全栈技术带给开发者全新的资源、资产与架构视角,使得开发者拥抱更现代化的技术方法、工具与最佳实践,实现自身技术能力的纵向提升与革新。


增强技术适应能力,实现跨领域发展。以容器、微服务、Serverless 为代表的云原生技术,已经让数据库、AI、大数据、音视频、区块链等技术领域都在其影响下持续推陈出新;而基于 K8s 的平台化能力,开发者在历史上第一次有机会将多种曾经彼此割裂的新兴技术领域协同起来,实现自身技术能力的横向扩展。此外,开发者有机会探索分布式应用架构设计、开发、测试、运维。不仅开拓技术视野,而且丰富开发经验,有效增强自身的竞争力和适应能力。


提升协作效能,探索业务创新。在容器和 K8s 等云原生技术的加持下,CI/CD 以及 DevOps 实践迎来了又一次飞跃式发展。应用开发流程的简化、自动化与一体化,不仅使得开发者可以更加聚焦于对业务需求与客户价值的深入理解,更加快速有效地满足客户需求;同时,通过解决业务问题,探索业务创新。


云原生为开发者实现全云实践的美好愿景提供了可能,但是开发者也要清醒地认识到,引领未来十年数字创新的使命,绝非一朝一夕之功。开发者应当以前瞻视角聚焦云原生开发者技术能力要求,关注价值实现。


技术可以推动转型,技术可以引领创新,但技术不是目的,技术要为业务服务。开发者在日常技术实践工作中,应当积极了解技术实现背后的具体业务需求,熟悉业务人员沟通语言背后的业务概念,并尽可能进一步挖掘业务需求背后的客户目标。其次,开发者也要摒弃常见的定势思维,比如客户体验就是漂亮的界面设计,体验只和 UI 有关,与技术人员无关等诸如此类的错误想法,开发者需要换位思考,让客户价值的思想融入自身的技术实践过程。


最后,开发者需要勤于思考,比如技术解决的核心业务问题是什么?这些问题的业务成因是什么?有哪些业务痛点没有考虑到,还可以做进一步增强?这样才能真正从业务与客户视角出发,由外而内地推动自身技术能力的提升。云原生技术在帮助企业快速落地业务需求的同时,也倒逼企业开发者具备商业视角,关注业务逻辑,做更有创新价值的事情。


时代呼唤云原生,这是云原生最好的时代,也是开发者最好的时代。让每一位开发者成为更好的自己,阿里云一直在路上。


点击下载云原生开发者洞察白皮书👇

https://developer.aliyun.com/special/native/developer



0 (5).jpg


为了给云原生开发者提供更好的实战舞台,今年第二届云原生编程挑战赛正式启动,赛题升级,大咖辅导,挑战 Serverless 极致创新,与全球开发者同场竞技,用技术解决实际问题!


立刻点击报名参赛👇

https://tianchi.aliyun.com/specials/promotion/cloudnative2021

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
7月前
|
Cloud Native Serverless 开发者
阿里云助力开发者创新:探索云原生技术的新境界
阿里云开发者社区推动云原生技术发展,提供丰富产品(如容器服务、Serverless、微服务架构、服务网格)与学习平台,助力企业数字化转型。开发者在此探索实践,共享资源,参与技术活动,共同创新,共创云原生技术新篇章。一起加入,开启精彩旅程!
|
2月前
|
Cloud Native 关系型数据库 分布式数据库
开发者如何使用云原生数据库PolarDB
【10月更文挑战第5天】开发者如何使用云原生数据库PolarDB
51 2
|
2月前
|
Cloud Native Java Shell
开发者如何使用云原生多模数据库 Lindorm
【10月更文挑战第3天】开发者如何使用云原生多模数据库 Lindorm
72 4
|
2月前
|
负载均衡 Cloud Native 安全
云原生时代的开发者指南:从容器到服务网格
【9月更文挑战第32天】在云原生技术日益成为企业数字化转型的核心力量之际,了解其背后的理念与实践对于开发者而言至关重要。本文旨在通过浅显易懂的语言,为读者揭开云原生技术的神秘面纱,从容器化的基础谈起,逐步深入到服务网格的高级应用,带领开发者们在云原生的海洋中航行。
43 1
|
4月前
|
Cloud Native 持续交付 开发者
"云原生时代,开发者如何坐拥创新利器,秒变技术大牛?揭秘黄金时代背后的秘密武器与无限可能!"
【8月更文挑战第14天】云原生技术的兴起标志着软件开发进入黄金时代。它不仅是一种技术趋势,更是思维的革新,赋予开发者前所未有的灵活性和效率。通过微服务、容器化等技术,云原生加速了创新迭代,提升了资源利用与成本效益,增强了应用的可靠性和韧性,并促进了团队间的协作与知识共享。这一切都为开发者创造了更多机遇与挑战。
39 1
|
5月前
|
存储 Cloud Native 智能网卡
共识协议的技术变迁问题之应用程序开发者应如何利用现有服务降低系统复杂性
共识协议的技术变迁问题之应用程序开发者应如何利用现有服务降低系统复杂性
|
7月前
|
安全 Dubbo 应用服务中间件
活动回顾丨云原生开源开发者沙龙北京站回放 & PPT 下载
4 月 13 日,云原生开源开发者沙龙在北京顺利开展。阿里云一线工程师围绕《微服务面临的安全挑战、趋势与解决方案》、《通过 Dubbo 构建零信任安全体系》、《零信任策略下 K8s 安全监控》、《如何构建零信任的网关》、《RocketMQ ACL 2.0 全新升级》、《Nacos安全零信任实践》6 个当下热门议题与现场的百余位开发者展开交流。
661 16
|
14天前
|
Cloud Native 安全 数据安全/隐私保护
云原生架构下的微服务治理与挑战####
随着云计算技术的飞速发展,云原生架构以其高效、灵活、可扩展的特性成为现代企业IT架构的首选。本文聚焦于云原生环境下的微服务治理问题,探讨其在促进业务敏捷性的同时所面临的挑战及应对策略。通过分析微服务拆分、服务间通信、故障隔离与恢复等关键环节,本文旨在为读者提供一个关于如何在云原生环境中有效实施微服务治理的全面视角,助力企业在数字化转型的道路上稳健前行。 ####
|
15天前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
17天前
|
消息中间件 存储 Cloud Native
云原生架构下的数据一致性挑战与应对策略####
本文探讨了在云原生环境中,面对微服务架构的广泛应用,数据一致性问题成为系统设计的核心挑战之一。通过分析云原生环境的特点,阐述了数据不一致性的常见场景及其对业务的影响,并深入讨论了解决这些问题的策略,包括采用分布式事务、事件驱动架构、补偿机制以及利用云平台提供的托管服务等。文章旨在为开发者提供一套系统性的解决方案框架,以应对在动态、分布式的云原生应用中保持数据一致性的复杂性。 ####