过去数年间,在企业数字化转型的大趋势下,云原生,凭借其敏捷、弹性、平滑的特征,不仅帮助大量企业实现降本增效,也大幅提升了开发过程中的生产力,成为当下最主流的技术发展方向之一。
不过,对于开发者而言,如何借助“真正的云原生”提升效率、降低开支,充分享受云原生的技术红利,是更值得关注的议题。
云原生,已经成为大厂的“技术底色”
现在越来越多应用采用云原生技术进行构建。有数据统计,近年来云原生相关的应用增长超过了 200%,CNCF 所评估的项目数甚至达到了 372% 的增长。咨询机构 Gartner 也预测,到 2025 年云原生平台将成为 95% 以上的新数字化计划的基础,而去年这个比例还不到 40%,显然还具有非常大的增长潜力。
其实,云原生早已是大厂实现技术迭代的关键抓手。
在 10 月 29 日举办的 Techo Day(腾讯技术开放日),腾讯云副总裁刘颖透露,“早在 2015 年容器和 K8S 出现时,腾讯内部就已经将这些技术引入实际业务,经过早期一系列内部业务试点,腾讯在云原生技术上的积累逐渐成熟,之后我们将云原生技术放到腾讯云上对外部客户输出,同时进一步在腾讯自研业务中推进云原生技术升级换代。”
据了解,今年腾讯的自研业务已全面上云,上云规模突破 5000 万核。
作为业界最大规模的云原生实践,和最大规模的 Kubernetes 集群,腾讯基于云原生构建起了面向未来的技术架构,支撑起视频号、腾讯会议之类的大型应用的爆发式增长。
例如,通过容器和微服务等技术,腾讯构建了统一的技术底座和算力调度平台,也促进了内部的协作创新。
结合内外部经验,腾讯已沉淀出一套完整的云原生技术和产品体系,涵盖软件研发流程、计算资源、架构框架、数据存储和处理、安全等五个领域的多个场景。
除此之外,腾讯的各项动作也意味着,其在持续加重对云原生的布局,积极扩充云原生产品体系,加大对云原生技术的研发投入。
大厂对云原生的“押注”,也牵引着行业的注意力,无论是为了提升开发效率还是学习开发技能,越来越多的开发者都在接触、拥抱云原生。据了解,腾讯云原生产品服务的开发者总数已经超过 300 万。
云原生快速发展的背后,不仅仅是量的变化,同样引发了业内对架构方案、生产方式、思维模式、商业模式的思考。
对开发者而言,云原生的价值是什么
云原生对企业而言,意味着降本增效,以及更好地支持业务发展,那对开发者而言,云原生的价值又如何评判?
在腾讯云副总裁黄俊洪看来,“只有充分享受到云计算红利,才是真正的云原生。云原生的发展,本质上解放了开发者的生产力,让代码的开发工作有了质的提升,开发者能更加聚焦到有创造力的业务逻辑和业务场景的理解上。”
过去企业“上云”只是单纯把常见的底层资源如计算、存储、网络堆砌到云上,缺少对开发过程、开发架构、开发框架选型以及应用如何快速交付的关注。对开发者而言,这个阶段也只是通过基础设置来提升资源层面的利用效率。
随着云计算基础设施日益完善,“上云”已经不再是单纯的“上虚拟机”。云原生作为“上云”的 2.0 阶段,核心是将应用程序的每个部分都进行打包、动态编排,每个部分都能被主动调度和管理。
通过将基础设施与业务平台融合,这些能力得以“排列组合”到一起,为业务应用提供标准的运行、监控、治理平台。这让开发者能把关注点从资源,转移到开发本身。
比如,微服务把应用程序构造成一组松散耦合的服务进行开发部署,大大提高业务的敏捷性;通过 DevOps,进行持续集成交付以实现完整的自动化和上云协同。
通过云原生技术来构建应用,开发者不再需要耗费大量时间去考虑底层技术实现,通过一些好用的云原生工具,就能快速调用和管理底层资源,所有算力能够自动启动、伸缩,快速响应业务,有效提升了资源利用率,降低开发成本。得益于此,开发者可以有更多精力投入对业务的思考。
除此之外,云原生也带来了开发环境的改变。如今各个云服务商都在推出好用的云端开发工具,例如腾讯云的 Cloud Studio,帮助开发者摆脱本地开发物理环境的束缚,可以随时随地在云端开发、协作、发布应用。同时,其融合了腾讯云的底层云资源和在线开发环境,开发者可以享受更便捷、高效的开发过程。
云原生工具越来越丰富易用
对开发者而言,需要关注的不仅是行业趋势,也需要及时学习和了解新的云原生产品,保持与时俱进。
近两年,微软、谷歌、AWS、腾讯云等云服务商,都不断加大在微服务、容器化、Serverless、分布式云等领域的投入,为企业和开发者提供各种高效、稳定的云原生产品,这些产品的功能和设计,也越来越丰富易用。
此次 Techo Day,腾讯云重磅发布了三款全新的云原生产品。
•TSE 云原生网关 KONG,作为高性能、高可用的开源托管网关,可以集流量网关、安全网关、微服务网关为一体,有效减少用户自建网关的开发和运维成本。
•TSE Polarismesh(北极星),是腾讯开源的服务发现、配置中心和治理中心,能解决分布式或者微服务架构中的服务可见、故障容错、流量控制和安全问题。
•TKE Housekeeper 原生节点,是专为云原生设计的增强节点,通过云原生声明式的方式管理和运维节点,解决 Serverful 模式下节点运维困难的问题。同时通过 request 推荐、节点缩放、调度优化、节点水位控制等组合能力,解决资源利用率低的问题。
这些产品在推出前,都经过了海量内部业务的验证。例如,HouseKeeper 基于原生节点的成本优化能力,帮助腾讯内部某大型业务实现了 2 个月资源申请量下降 25%。
腾讯云副总裁刘颖表示,未来,腾讯云还会持续投入云原生更前沿的应用,“例如,如何将云原生技术与具体开发场景融合演进,进一步提升特定场景的开发效率。”
技术的发展离不开生态的繁荣,离不开海量用户的实践。成功的实践背后,正是一方面凭借自身的业务经验为开发者提供工具产品,另一方面背靠庞大的海量开发者,不断收集真实的需求与反馈,从而形成技术产品生态的正循环。
结语
作为技术发展的趋势,云原生势必会从一项前沿技术变得愈发主流,甚至成为开发领域的通用范式。但真的到了那一天,云原生和现在相比会不会有很大的不同?云原生的未来是什么?
我们回顾最初的云原生技术,从微服务架构大规模的应用开始,到今天进入一个相对成熟和大规模应用落地的阶段。未来的方向,是更高效的资源管理与调度?还是更敏捷的应用交互和管理?亦或者是更完善的安全可信和合规?
对于开发者、企业、云厂商肯定有不同的答案,但就像布莱恩•阿瑟在《技术的本质》一书中所说 —— “技术的本质就是对自然的编程,它是一种对现象的捕捉,并驾驭这些现象为人类服务。”
开发者应该如何借助公司提供的平台、云厂商提供的技术和工具,为自身的开发工作服务?又该如何用个人的力量反哺云原生技术的发展与生态的建设?可能只有想明白这一点,才能更好地适应即将全面到来的云原生时代。