解码“平台工程”,VMware 有备而来
随着全球数字化进程加快,企业使用前沿技术加快商业创新,以提高竞争力。其中如何加快开发效率,为客户创造更多价值成为新的关注焦点。
继DevOps后,“平台工程”(Platform Engineering) 一词引发热议。平台工程是一套用来构建和运营支持软件交付和生命周期管理的自助式内部开发者平台的机制和架构,其目标是优化开发者体验并加快产品团队为客户创造价值的速度。据Gartner预测,到2026年,80%的软件工程组织将建立平台团队,其中75%将包含开发者自助服务门户。
平台工程是DevOps的替代品吗?平台工程究竟能为我们带来什么?近日,在VMware Tanzu媒体沟通会上,VMware Tanzu(业务)大中华区总经理邓惠钧、VMware现代化应用事业部技术总监俊刚为我们详细解读“平台工程”的价值以及VMware 在平台工程的布局。
一、平台工程是什么?
回顾软件开发流程,经历从瀑布式开发到敏捷开发再到DevOps三个阶段。从上世纪70年代起,软件开发流程采用瀑布式开发,按照需求分析、架构设计、编码、测试和维护的顺序来进行。随着时间推移和技术发展,人们对产品迭代速度越来越高,软件开发周期变得越来越短,瀑布式开发变得不合时宜。
2000年左右,敏捷开发开始走上历史舞台,有效提高需求上线速度,并获取用户的反馈进行快速产品迭代。
2008 年,DevOps 一词诞生,它的出现打破开发和运维人员之间的壁垒,开发和运维不再是孤立,两者在软件生命周期内协作沟通。DevOps是帮助企业将运维和开发相融合,而平台工程通过工具和流程为企业的软件开发团队提供一个“内部开发平台”,涵盖应用程序生命周期的所有操作需求。其最终的目标是打造无摩擦的自助服务体验,为用户提供正确的能力,帮助其以最少的成本完成重要工作,提高终端用户的生产力,并减少他们的认知负担。
二、VMware 对平台工程的理解
在邓惠钧看来,平台工程不是DevOps的替代品,而是延申和补充,类似“DevOps 2.0”。她认为平台工程有以下作用:一是平台工程建立了统一、可持续的解决方案,不是某个单一的解决方案;二是它可以不断重复使用应用开发的代码和工具;三是更具安全性。
俊刚补充道,从VMware角度讲,平台工程是非常庞大的体系,涉及到IT系统建设方方面面,从平台、应用、管理、开发者效率等。
在平台工程这个概念提出之前,VMware 一直助力提升开发者效率,做了很多工作。从VMware的角度来看,平台工程涵盖以下三层,来解决IT人员快速交付、提升开发者效率,帮助业务需求从产生到快速上线、快速落地的实现。

最底层是基础架构,涵盖容器、计算、网络、存储等技术,涵盖Tanzu Kubernetes Grid、Tanzu Mission Control等,同时采用Aria 一整套面向企业级的数据中心、云环境管理工具实现整体基础架构的监管控。以高效、有效、安全的方式为开发、运维团队供给资源。
中间为应用平台层,分为两部分,一是传统PaaS技术,如CI/CD流程、镜像库、日志分析、多租户、服务目录管理、微服务框架等;二是IDP开发者平台,集成IDE生成、应用脚手架等提升开发者效率的工具。去年,VMware 正式发布了Tanzu Application Platform,为开发、应用安全、应用运维团队打造一条简化的端到端开发运维体验的路径,以提升软件开发效率、加固应用安全、简化应用运维复杂度,加快应用迭代的时间。
最上层为管理实践,涵盖平台团队分工与角色、平台即产品管理方法等。VMware设置了Tanzu Labs Services 实验室,这是面向应用现代化的专业服务团队,凝练众多平台工程的新型管理方法和工程实践,为企业提供更多深入的服务。
三、VMware 在平台工程的应用
例如,某银行过去做了很多 DevOps的部署,但由于各个部门都在做自己的工具,没有充分考虑到工具之间的连通性和衔接,形成了一个一个孤岛,实现效果不是特别理想。另外,CI/CD流程由不同团队研发,整个团队缺乏完整的全管控示图,只看到一个个非阶段的报告,没有完整示图。当应用上线后如果出现问题,只能在不同系统里逐步排查问题。
Tanzu Application Platform作为一个端到端集成平台解决方案,帮助企业通过一套丰富的开发工具和预先铺设的生产路径,更快、更安全地构建和部署更多软件。该银行通过Tanzu应用平台可解决从源代码到上线的全流程示图问题,还可以将自研工具嵌入到流程中,有效提升效率,一旦发生问题,还可以做到快速定位。
相关文章:
解码“平台工程”,VMware 有备而来
随着全球数字化进程加快,企业使用前沿技术加快商业创新,以提高竞争力。其中如何加快开发效率,为客户创造更多价值成为新的关注焦点。 继DevOps后,“平台工程”(Platform Engineering) 一词引发热议。平台工…...
2023年第四届华数杯数学建模A题B题C题D题思路代码分析
文章目录 0 赛题思路1 竞赛信息2 竞赛时间3 组织机构4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 0 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor 1 竞赛信息 为了培养学生的创新意识及运用数…...
java版直播商城平台规划及常见的营销模式+电商源码+小程序+三级分销+二次开发 bbc
1. 涉及平台 平台管理、商家端(PC端、手机端)、买家平台(H5/公众号、小程序、APP端(IOS/Android)、微服务平台(业务服务) 2. 核心架构 Spring Cloud、Spring Boot、Mybatis、Redis 3. 前…...
windows物理机 上安装centos ,ubuntu,等多个操作系统的要点
一、摘要 一般情况下,我们的笔记本或工作电脑都默认安装windows 分几个区,当下是win7 win8 win 10 win11 等,突然我们有需求需要安装个centos ,后面我们应当怎么做,要点是什么?一定要根据网上的贴子一步步来…...
FSDirectory 与 RAMDirectory
FSDirectory和RAMDirectory是Lucene搜索引擎中两种不同的Directory实现,用于管理索引数据的存储。Lucene是一个强大的开源搜索引擎库,它用于创建全文搜索功能,而Directory则是用来表示索引数据的存储位置。 FSDirectory: FSDirectory是将索引…...
小程序开发:开发框架与工具的使用指南
引言 本文以微信小程序为例介绍了小程序开发框架与工具的使用,通过本文的阅读,相信大家能够简单了解小程序开发的基本流程和常用工具,从而快速上手小程序开发。 文章目录 引言一、小程序开发框架与工具简介1.1 小程序开发框架1.2 小程序开发工…...
【LeetCode】探索杨辉三角模型
一、题目描述 力扣原题 首先我们要来了解一下题目本身在说些什么,通过下方的动图我们可以更加清楚地看到杨辉三角是怎样一步步生成的。给到的示例中我们通过输入杨辉三角的行数,然后通过计算得到这个杨辉三角的每一行是什么具体的数值 二、模型选择 首先…...
Qt 中引入ffmpeg 动态库
1、前期准备 在qt引入ffmpeg动态库的时候,需要准备ffmpeg的动态库和头文件。 2、打开qt项目 在qt项目的.pro文件中添加以下几行代码 INCLUDEPATH $$PWD/thirtLib/ffmpeg4.2/include win32: LIBS -L$$PWD/thirtLib/ffmpeg4.2/lib/ -lavcodec -lavdevice -lavf…...
工程师是怎样对待开源 qt
工程师如何对待开源 本文是笔者作为一个在知名科技企业内从事开源相关工作超过 20 年的工程师,亲身经历或者亲眼目睹很多工程师对待开源软件的优秀实践,也看到了很多 Bad Cases,所以想把自己的一些心得体会写在这里,供工程师进行…...
Maven中Servlet的坐标为什么要添加<scope>provided</scope>
Maven中Servlet的坐标 在Maven中,我们使用坐标(Coordinates)来唯一标识一个依赖库。对于Servlet,其坐标通常是指定servlet-api包。在使用Servlet时,我们需要将其添加到项目的依赖中,以便在编译、运行和测试…...
联发科CEO:未获准向华为供货,换机潮已过去,手机需求不会更差
据钜亨网报道,联发科近期召开了业绩说明会。蔡力行,该公司副董事长兼首席执行官,表明当前手机市场需求保持稳定,并且随着过去两年用户更换潮的过去,对手机市场明年有一定期望。 根据蔡力行的指示,联发科正在…...
2023年DevOps和云趋势报告!
要点 ●云创新已从革命性阶段转变为演进性阶段,重点是迁移和重新架构工作负载。云空间已发展为提供对可扩展资源和托管服务的按需访问,强调简化交互并减少团队的认知负担。 ●人工智能 (AI) 和大型语言模型 (LLM) 可以通过解决认知过载问题并支持即时管…...
怎么学习CSS相关技术知识? - 易智编译EaseEditing
学习CSS技术是前端开发中的重要一环,它用于控制网页的样式和布局,使网页更加美观和易于使用。以下是学习CSS技术的几个方面: 基本语法和选择器: 了解CSS的基本语法,学习如何使用选择器来选择HTML元素并应用样式。 样…...
Qt 2. QSerialPortInfo显示串口信息
在ex2.pro 添加: QT serialport//main.cpp #include "ex2.h" #include <QtSerialPort/QtSerialPort> #include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);Ex2 w;w.show();QList<QSerialPortInfo>…...
linux or mac 查看进程的pid和占有的端口
1.查看谁占有了什么端口? lsof -i:<占用端口> [rootgit-lab gitlab]# lsof -i:8929 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME docker-pr 25090 root 4u IPv4 140059875 0t0 TCP *:8929 (LISTEN) docker-pr 25096 root …...
8.2Jmeter5.1:察看结果树的响应结果乱码
【问题描述】 Jmeter察看结果树的响应结果乱码 原因:jmeter.properties未设置语言 【解决方案】 修改jmeter.properties的属性,然后重启Jmeter # The encoding to be used if none is provided (default ISO-8859-1) sampleresult.default.encodingut…...
vscode 快捷键
今天好闲 就记一些学的东西吧~ vscode 快捷键 快速生成头文件注释:Ctrlalti 快速生成方法注释:Ctrlaltt 新建窗口:CtrlShiftn 查找:Ctrlf 替换:Ctrlh 替换所有:CtrlAltEnter 打开上一个编辑器:…...
【Antv G6】导出图片
需求 将Antv G6生成的树形图导出成图片 代码 <div style"height: calc(100% - 50px);"><div id"miniMap" class"minimap"></div><div id"containerG6" ref"containerG6" class"containerWrap&…...
shared_ptr
源码路径: /opt/rh/devtoolset-10/root/usr/include/c/10/bits/shared_ptr_base.h D:\wsl-ubuntu20.04\rootfs\usr\include\c\9\bits\shared_ptr_base.h 类原型: template<typename _Tp, _Lock_policy _Lp>class __shared_ptr: public __shared_pt…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么?它的作用是什么? Spring框架的核心容器是IoC(控制反转)容器。它的主要作用是管理对…...
Monorepo架构: Nx Cloud 扩展能力与缓存加速
借助 Nx Cloud 实现项目协同与加速构建 1 ) 缓存工作原理分析 在了解了本地缓存和远程缓存之后,我们来探究缓存是如何工作的。以计算文件的哈希串为例,若后续运行任务时文件哈希串未变,系统会直接使用对应的输出和制品文件。 2 …...
【题解-洛谷】P10480 可达性统计
题目:P10480 可达性统计 题目描述 给定一张 N N N 个点 M M M 条边的有向无环图,分别统计从每个点出发能够到达的点的数量。 输入格式 第一行两个整数 N , M N,M N,M,接下来 M M M 行每行两个整数 x , y x,y x,y,表示从 …...
