平台模型是我们在这个领域看到越来越多的方法,它源于负责产品或服务的端到端交付的产品团队的理念。

如果只应用于单一的产品,或者几个产品,它的效果很好。 但如果有数百种产品或服务,把一个产品团队用于这些产品,对每一个来说都是低效和昂贵的。

想象10个团队,每个团队都有自己的技术栈、工具链和流程。 会一直重复解决类似的问题、花太多的时间来评估技术、集成、维护基础设施等等。 这些时间可以更好地花在建立和改进产品团队负责的实际产品上。

缺乏标准化的技术和流程也造成其他问题:

●管理变得昂贵,几乎不存在管理
●独立的堆栈减少了整个组织的知识共享
●许多产品团队实际上没有能力来运行完整的基础设施和应用程序。许多开发人员将基础设施操作视为分散他们实际工作的注意力,因此他们从不真正关注它。

虽然拥有多个端到端产品团队并不能很好地跨越大型复杂环境,但由清晰目标、边界和责任定义的平台模型却能做到 一个由用户建立在心中的平台,可以大大减少单个产品团队的辛苦和开销。

广义地说,平台团队提供基础设施、环境、部署管道和其他内部服务,使内部客户(通常是应用程序开发团队)能够构建、部署和运行其应用程序。
Evan Bottcher定义的数字平台在这时可以起作用:“作为一种令人信服的内部产品的自助服务API、工具、服务、知识和支持的基础。自主交付团队可以利用该平台以更快的速度交付产品功能,同时减少协作。”

自助服务是“一个好平台的一个关键特征。具体来说,它应该允许自助服务供应、自助服务配置、自助服务管理和平台功能和资产的运营。”

平台模型通常与本地云环境相关联,也适用于从古到今的许多其他类型的体系结构。主要优势有:

●应用团队可有更具效率。他们不必是基础设施运维方面的专家,也不必对工具链中的每种工具都有深入的了解,因而他们能够专注于产品。应用程序开发人员不再需要等待集中化的团队来为他们提供测试环境或云资源,而由此产生的自治性使他们能够更快地工作。

●改善管理。如果您的所有应用程序都运行在完全不同的基础架构堆栈上,使用不同的流程,那么您就无法有效地管理成本、遵从性和审计。一个有效的平台能带来高效的IT治理,同时授权应用程序团队快速交付。

●结束环境切换。不断地在应用程序和基础设施操作之间切换注意力是对生产力和创造力的巨大消耗。当个体工人和团队能够专注于自己特定的环境时,他们的境况会更好。

●持续改善基础设施。一个提供面向客户解决方案的公共平台,而不仅仅是对基础设施的原始访问,使组织具有更大的灵活性。平台的消费者不与基础设施堆栈的具体实现挂钩,因此平台团队可以迭代地替换和升级组件,并且只需要与应用程序团队进行最小程度的交互。

内部平台的使用

在对平台的讨论中,我们使用“内部平台”一词来表示由组织和为组织构建的平台。我们将这些平台与外部供应商提供的平台区分开来——例如,许多人认为AWS或其他IaaS产品是
“平台”。在调查中,我们将平台团队定义为那些负责维护其他团队用于构建和交付应用程序或服务的自助服务平台的团队。

我们提出了两个问题来衡量一个组织对内部平台的使用:
• 您的开发人员使用自助服务平台的百分比是多少?

• 哪些服务可供自助服务?

我们发现平台的使用在调查受访者中非常广泛。百分之六十三的人说他们至少有一个自助内部平台。 在拥有内部平台的人中,60%的人在拥有二到四个平台之间。在拥有内部平台的公司中,几乎有三分之一的公司有26%至50%的开发者使用该平台。

2020DevOps状态报告——平台模型:扩展DevOps的新方法的更多相关文章

  1. 2020DevOps状态报告

    这是Puppet报告的走过的第九个年头,本次报告基于对2400名IT.开发.信息安全行业的技术人员的调研,着重勾画了DevOps状态的两大趋势:平台模型.需求变更的管理.多年来,我们已经证明了DevO ...

  2. 2020DevOps状态报告——变更管理

    如果你的公司还没有走向平台化,现在仍然可以是很大的飞跃.您仍然可以通过解决公司的变更管理流程来加快软件交付.在本章中,我们将研究我们在公司内部所学的变更管理模式.我们将向您展示什么是有效的,什么是无效 ...

  3. ES6扩展——数组的新方法(Array.from、Array.of、Array.fill、Array.includes、keys values entries 、find)

    1.Array.from(objec,回调函数)将一个ArrayLike对象或者Iterable对象(类数组对象)转换成一个数组 1)该类数组对象必须具有length属性,用于指定数组的长度.如果没有 ...

  4. RightScale 2019年云状态报告:公共云快速增长 微软Azure增长最快

    https://www.rightscale.com/ 全球云管理服务厂商RightScale发布了年度云状态报告,今年报告的十大主要内容包括:企业在多云平台上投入巨资.公共云继续快速增长,但是私有云 ...

  5. 扩展 ASP.NET MVC 模型扩展 – ASP.NET MVC 4 系列

           大部分人不能将核心运行时(System.Web 中的类)和 ASP.NET Web Forms 应用程序平台(System.Web.UI 中的类)区分开来.        ASP.NET ...

  6. 基于UML网络教学管理平台模型的搭建

    一.基本信息 标题:基于UML网络教学管理平台模型的搭建 时间:2013 出版源:网络安全技术与应用 领域分类:UML:网络教学管理平台:模型 二.研究背景 问题定义:网络教学管理平台模型的搭建 难点 ...

  7. User模型扩展和自定义

    参考如下: django文档参考 django signal使用总结 django 信号注册 django信号问题1 django oneTooneFiled     1. django 自定义用户u ...

  8. 基于Wiki的知识共享平台模型架构

    一.引言 当今的全球化知识经济社会中呈现出信息泛滥和知识更新周期短的现象,知识管理逐渐成为现代企业管理中不容忽视的一环.虚拟企业是基于共识目标而组成的动态协作组织,成员参与的流动性与各成员之间地域分布 ...

  9. FreeBSD 宣布 2020 年第 4 季度状态报告

    FreeBSD 宣布 2020 年第 4 季度状态报告● 继续努力从 FreeBSD 基本系统中移除 GPL 协议的软件,以实现 FreeBSD 项目基本目标.● Linux 二进制兼容层的 Linu ...

随机推荐

  1. 【Docker】 .Net Core 3.1 webapi 集成EF Code First,使用MySql进行业务操作 、配置swagger (三)

    系列目录: [Docker] CentOS7 安装 Docker 及其使用方法 ( 一 ) [Docker] 使用Docker 在阿里云 Centos7 部署 MySQL 和 Redis (二) [D ...

  2. 数据结构——创建链表或树节点的小trick(哑结点)

    一般创建链表时,我们可以创建一个哑结点,来保存头部  * struct ListNode {  *     int val;  *     ListNode *next;  *     ListNod ...

  3. 团队作业part2--需求规格说明书

    需求规格说明书 一.目的 本说明书为了让用户尽快了解产品所含功能,描述用户对产品的期望与需求.明确软件开发的最终目的,使开发出来的软件能够更好的达到用户的需求.其作为用户和软件开发人员达成的技术协议书 ...

  4. 深入分析 Java、Kotlin、Go 的线程和协程

    前言 协程是什么 协程的好处 进程 进程是什么 进程组成 进程特征 线程 线程是什么 线程组成 任务调度 进程与线程的区别 线程的实现模型 一对一模型 多对一模型 多对多模型 线程的"并发& ...

  5. Python搭建调用本地dll的Windows服务(浏览器可以访问,附测试dll64位和32位文件)

    一.前言说明 博客声明:此文链接地址https://www.cnblogs.com/Vrapile/p/14113683.html,请尊重原创,未经允许禁止转载!!! 1. 功能简述 (1)本文提供生 ...

  6. Python+Selenium基本语法

    对Selenium自动化已有了解,最近开始做h5端的自动化,所以总结了下Python+Selenium自动化基本语法 一.启动浏览器 1.普通方式启动 #coding=utf-8 import tim ...

  7. Kubernetes K8S之鉴权RBAC详解

    Kubernetes K8S之鉴权概述与RBAC详解 K8S认证与授权 认证「Authentication」 认证有如下几种方式: 1.HTTP Token认证:通过一个Token来识别合法用户. H ...

  8. 使用 vue 仿写的一个购物商城

    在学习了 vue 之后,决定做一个小练习,仿写了一个有关购物商城的小项目.下面就对项目做一个简单的介绍. 项目源码: github 项目的目录结构 -assets 与项目有关的静态资源,包括 css, ...

  9. Tensorflow环境配置&安装

    Tensorflow环境配置&安装 明知故犯,是不想有遗憾. 背景:Tensorflow 环境配置和安装. 一.安装 Anaconda 二.建立.激活.安装.验证.使用 Tensorflow ...

  10. C# 生成6位短信验证码

    1 private string VerifyCode() 2 { 3 Random random = new Random(); 4 return random.Next(100000, 99999 ...