2023平台工程崭露头角,AI 带来新机遇与挑战
在今年,平台工程正在迅速在 IT 企业中崭露头角,成为软件开发团队的必要实践。根据 CloudBees 发布的最新报告《2023年平台工程:快速采纳和影响》,83%的受访者已经完全实施了平台工程,或正处于某种实施阶段。
平台工程是一门设计和构建内部开发者平台(IDP)、工具链和工作流程的学科,它为软件工程团队提供了自助服务的能力。
IT 领导者一直在不断面临着要用更少的资源做更多事情的挑战。根据各种研究,开发者每周实际上只用了12.5%到30%的时间来编写代码。这也促使 IT 和 DevOps 领导者迫切寻找新的方法来提高开发者的生产力。由于平台工程建立了改进开发者生产力和开发者体验(DevEx)的最佳实践,因此已经成为备受关注的领域。
平台工程的实践已经成功地分担了开发者的大部分工作负担。调查数据显示,已经采用或计划采用平台工程的水平相当高(83%),其中:
- 20% 已经完全实施
- 33% 正在进行中
- 11% 最近刚刚开始
- 19% 处于规划阶段
仅有17%的受访者表示他们没有计划推出平台工程。

图片来源:CloudBees
平台工程的五个主要推动因素各约占回应的20%,并展示了平台工程对开发者和DevOps团队的重要和广泛好处。采用平台工程的推动因素包括:
- 开发者生产力(21%)
- 持续集成和持续交付(CI/CD)流水线的实施(20%)
- 工具和流程的标准化(20%)
- 安全性增强(20%)
- 基础设施即代码(19%)
业务影响
在过去的10年中,随着DevOps的崛起,平台工程的突出地位通常被归因于“我们忘记了开发者!”的现象。在DevOps崛起期间,许多事情向左移动,进一步加重了开发者的负担,并分散了注意力,使其远离了编码和创新。组织投资于平台工程,以满足多种需求。
与关注开发者生产力一致,平台工程的前五个用例中有三个:
- 开发、测试和生产环境的管理(22%)
- CI/CD 流水线管理(21%)
- 开发者平台即服务(PaaS)(18%)
目标和成功衡量标准
几乎所有最重要的平台工程目标都与 DevEx 和提高开发者生产力相关。排名最高的三个目标是:
- 开发者的自助服务(29%)
- 于采用(25%)
- 满足开发者需求(20%)
平台工程团队的成功衡量标准包括:
- 开发者生产力(23%)
- 内部KPI达标(19%)
- 成本控制(16%)
- 管理工具扩张(13%)
最后,调查显示,组织内的平台工程的归属位置各不相同,但最常见的归属位置包括:
- 云工程(30%)
- 基础设施团队(25%)
- 开发部门(20%)
- 共享服务(13%)
- 运维部门(13%)
根据调查数据显示,许多组织广泛采用平台工程,并将平台工程视为最大程度提高软件开发效率的关键元素。
平台工程与 AI
平台工程在接下来的12至18个月内将会面临什么挑战?
平台团队需要为持续的变化做好准备。公司被收购,新平台被收购(通常不会放弃旧平台),新应用程序和部署模式将继续出现。最近出现的颠覆性技术是生成式人工智能(AI),紧随其后的是人工智能(AI),特别是机器学习(ML)。AI 可以并将被应用于改进平台工程。
然而,像创建、运营和保护软件和系统的其他方面一样,AI/ML和生成式 AI 也带来了挑战。我们看到了三个关键方面:
首先是管理多个大型数据集和模型,这是 ML 算法和生成式 AI 大型语言模型(LLM)的生命线。类似于专门的专家系统,基于企业内部数据训练的特定领域的 LLM 在采用生成式 AI 时将变得尤为重要,前提是要维护数据的隐私和安全。
平台工程必须适应新的 AI 工作流程和数据、提示以及设计、训练和维护模型、向量数据库和大型数据集的 AI 工程师的流水线,这些数据集会不断增长和演变。这些 AI 流水线必须支持其工作流模式的特定要求,并与相互依赖的软件开发流水线和发布流程相一致和整合。
另外 AI/ML 和生成式 AI 通常具有与我们今天理解和运营的云和应用环境分开的操作特性。AI 引入了新的硬件操作环境,包括 AI 加速器、GPU、VPU和高度可扩展的 CPU,以及具有挑战性的性能和优化学习曲线。随着 AI,特别是生成式 AI 在企业中被采用和推广,平台工程将发挥关键作用。
关于 Walrus
Walrus 是基于平台工程理念构建的全新一代应用管理平台,其一键部署和克隆复杂应用系统、集成 AI 大语言模型简化模板代码生成以及灵活强大的应用和环境动态管理能力等特性备受用户青睐。借助 Walrus 用户可以将云原生的能力和最佳实践扩展到非容器化环境,并支持任意应用形态统一编排部署,降低使用基础设施的复杂度,为研发和运维团队提供易用、一致的应用管理体验,进而构建无缝协作的软件交付流程,加速企业业务创新。开源地址:github.com/seal-io/walrus
参考链接:
- https://www.devopsdigest.com/platform-engineering-2023
- https://www.cloudbees.com/platform-engineering-research
相关文章:
2023平台工程崭露头角,AI 带来新机遇与挑战
在今年,平台工程正在迅速在 IT 企业中崭露头角,成为软件开发团队的必要实践。根据 CloudBees 发布的最新报告《2023年平台工程:快速采纳和影响》,83%的受访者已经完全实施了平台工程,或正处于某种实施阶段。 平台工…...
如何使用python快速修改Excel表单中的大量数据
python修改Excel中的内容进阶加速版 前面有一篇文章讲到了使用python处理Excel中的数据文件,即修改Excel中的数据,但是那个版本的代码跑点小规模、小数据量的excel还行,一旦数据量达到万条级别,代码运行会非常慢!因此&…...
✔ ★【备战实习(面经+项目+算法)】 10.27学习
✔ ★【备战实习(面经项目算法)】 坚持完成每天必做如何找到好工作1. 科学的学习方法(专注!效率!记忆!心流!)2. 每天认真完成必做项,踏实学习技术 认真完成每天必做&…...
视频分辨率/帧率/码率选择参考
1. 视频码率与分辨率的参考表 1080*720的分辨率,用5000K左右; 720*576的分辨率,用3500K左右; 640*480的分辨率,用1500K左右。 2. 计算公式 基本算法:码率(kb…...
LeetCode75——Day18
文章目录 一、题目二、题解 一、题目 1732. Find the Highest Altitude There is a biker going on a road trip. The road trip consists of n 1 points at different altitudes. The biker starts his trip on point 0 with altitude equal 0. You are given an integer …...
Java NIO 高并发开发
Java NIO 高并发开发 前言 Java NIO(New I/O)相比于传统的Java I/O(BIO)在高并发开发方面具有以下优势: 非阻塞模式:Java NIO使用非阻塞的I/O操作,允许一个线程管理多个通道(Channe…...
8.循环神经网络
#pic_center R 1 R_1 R1 R 2 R^2 R2 目录 知识框架No.1 序列模型一、序列模型二、D2L代码注意点三、QA No.2 文本预处理一、D2L代码注意点二、QA No.3 语言模型一、语言模型二、D2L代码注意点三、QA No.4 循环神经网络 RNN一、RNN二、QA No.5 循环神经网络 RNN 的实现一、从零…...
[C++随想录] map和set的使用
map和set的使用 set初始化finderasecountlower_bound && upper_boundequal_ range mapinsert[ ]运算符 multiset && multimap set — — key模拟 map — — key_value模型 set 初始化 void set_test1() {set<int>s;s.insert(10);s.insert(12);s.insert(…...
公网IP怎么设置?公网ip有哪些优点和缺点?
随着互联网的普及,越来越多的人开始关注网络安全和隐私保护。其中,公网IP的设置成为了一个备受关注的话题。本文将详细介绍公网IP的设置方法以及公网IP的优点和缺点。 一、公网IP设置方法 1. 路由器设置 在家庭或企业网络中,路由器通常是最重…...
蓝桥杯第 2 场算法双周赛 第2题 铺地板【算法赛】c++ 数学思维
题目 铺地板https://www.lanqiao.cn/problems/5887/learning/?contest_id145 问题描述 小蓝家要装修了,小蓝爸爸买来了很多块(你可以理解为数量无限)2323 规格的地砖,小蓝家的地板是 nm 规格的,小蓝想问你…...
APScheduler-调度器 BackgroundScheduler
当你有主程序需要执行,让定时任务在后台执行时,可以用BackgroundScheduler from apscheduler.schedulers.background import BackgroundScheduler import time # 仅运行定时任务 scheduler BackgroundScheduler() # interval example, 间隔执行,…...
浅谈UI自动化测试
随着软件行业的不断发展,建立一个完善的自动化测试体系变得至关重要。目前,自动化测试主要涵盖接口自动化测试和UI自动化测试两个主要领域。就目前而言,企业在UI自动化测试方面的覆盖率仍然相对较低。 接口自动化测试可以模拟和执行应用程序…...
golang 工程组件 grpc-gateway—yaml定义http规则,和自定义实现网关路由
yaml定义http规则,和自定义实现网关路由 proto定义http规则总归是麻烦的,因为proto文件还是定义消息,grpc接口好一些。配置http规则有更好的方式。我们可以使用yaml文件定义接口的http规则。 同时有些接口不是只是让网关转发这么简单 有时需…...
在NLP中一下常见的任务,可以用作baseline;MRPC,CoLA,STS-B,RTE
1.MRPC(Microsoft Research Paraphrase Corpus)任务 是一个用于文本匹配和相似度判断的任务。在MRPC任务中,给定一对句子,模型需要判断它们是否是语义上等价的。MRPC任务的训练集和测试集由约5700对英语句子组成。每个句子对都有…...
【计算机网络笔记】Cookie技术
系列文章目录 什么是计算机网络? 什么是网络协议? 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能(1)——速率、带宽、延迟 计算机网络性能(2)…...
在虚拟环境中,通过pip安装tensorflow
目录 激活python虚拟环境,更新pip 通过pip 安装tensorflow 确定python版本: 编辑安装tensorflow: 编辑 为什么使用pip安装tensorflow? 激活python虚拟环境,更新pip 命令为python -m pip install --upgrade pip 通过pip 安装tensorf…...
【Django restframework】django跨域问题,解决PUT/PATCH/DELETE用ajax请求无法提交数据的问题
【Django restframework】django跨域问题,解决PUT/PATCH/DELETE用ajax请求无法提交数据的问题 1 问题描述: 我用restframework(ModelSerializerGenericApiView)开发了一组符合RestFul接口标准的接口,这意味着它将支持客户端发来的GET、POST、…...
神经网络与深度学习第四章前馈神经网络习题解答
[习题4-1] 对于一个神经元 ,并使用梯度下降优化参数时,如果输入恒大于0,其收敛速度会比零均值化的输入更慢。 首先看一下CSDN的解释: 如果输入x恒大于0,使用sigmoid作为激活函数的神经元的输出值将会处于饱和状态&a…...
Go 语言操作 MongoDb
文章目录 连接数据库插入数据库插入一条数据批量插入数据 查询数据用 BSON 进行复合查询聚合查询 更新数据删除数据 连接数据库 package mainimport ("context""go.mongodb.org/mongo-driver/mongo""go.mongodb.org/mongo-driver/mongo/options"…...
UE4/5 竖排文字文本
方法一、使用多行文本组件 新建一个Widget Blueprint 添加Text 或者 Editable Text(Multi-Line) 、TextBox(Multi-Line) 组件。 添加文字,调整字号,调整成竖排文字。 在Wrapping (换行)面板中 : 勾选 Auto Wrap te…...
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
