首页 » 软件开发 » 如何构建IDP(内部开发者平台)?(平台开发者构建业务基础设施)

如何构建IDP(内部开发者平台)?(平台开发者构建业务基础设施)

萌界大人物 2024-07-24 12:26:31 0

扫一扫用手机浏览

文章目录 [+]

平台工程是设计和构建工具链和工作流的学科,为云原生时代的软件工程组织提供自助服务功能。
平台工程师需要提供一种集成的产品,即IDP,涵盖应用程序整个生命周期。

简单总结的话,技术体系中会新增一个平台团队,该团队会按照平台工程的思路,提供一个IDP。

为什么需要IDP?

从业务来看,业务变得越来越复杂。
比如一家内容公司,内容形式从过去的文本扩展到图片、视频以及直播,同时又会考虑增加社交属性。
有了流量,就会考虑商业化和电商。
为了更大程度增加APP用户使用时长和使用效果,又会引入推荐系统。

如何构建IDP(内部开发者平台)?(平台开发者构建业务基础设施) 软件开发
(图片来自网络侵删)

实际上业务复杂意味着对技术的要求也是越来越高。
比如使用到的存储类型的产品,除了过去的关系型数据库、redis,也会有KV存储、图数据库、数据仓库等。

从底层基础设施来看,从单一的公有云或是私有云演进到混合云。

如果让业务研发需要感知这些复杂性,简直无法想象。
所以需要在业务研发和基础设施团队之间,增加一个平台团队。

平台团队通过IDP,让业务无需感知底层基础设施,专注在业务迭代上,提高应用交付效率。

简单总结的话,当业务规模到一定程度的时候,需要IDP来解决复杂性的问题。

如何构建IDP?

humanitec 有一些关于IDP的实现方案。
在不同的云上,根据实际情况替换部分组件。

AWS

GCP

Azure

通过上边三幅图,可以知道一个IDP,包括:

开发者控制层开发工具服务目录、API目录、Portal版本控制代码版本控制应用描述版本控制基础设施版本控制集成和交付层CI平台编排CD可观测层监控和日志安全层资源层云资源和云服务

实际上,核心是构建一个以应用为中心的,可以支持业务自助管理应用并且持续交付应用到不同异构基础设施的平台。

其实想实现这样的目的,需要抽象很多东西。
此处想一下,平台团队在技术体系中的位置,我个人理解关键主要是应用模型、资源模型(IaC)以及workflow三块。

应用模型

应用模型不仅包括服务自身的描述,也会包括所依赖服务的描述。
该模型是以应用为中心思想的关键。

图中的方案是score。

类似的解决方案有OAM和radius。

资源模型

资源模型是对异构基础设施的抽象,向上提供标准化的体验,并且自动化基础设施的管理和交付。

图中的实现方案是terraform。
类似的解决方案有crossplane、pulumi。

Workflow

Workflow会涵盖整个应用的交付过程。
不仅包括CI、平台编排、CD,也会包括风险管控、预算审批等环节。
所以workflow一定需要支持其他工具以插件化的形式接入的能力。

总结

本文简单介绍了平台工程和IDP。
并且基于humanitec的平台架构方案给出了自己的一些观点。

标签:

相关文章

语言中的借用,文化交融的桥梁

自古以来,人类社会的交流与发展离不开语言的传播。在漫长的历史长河中,各民族、各地区之间的文化相互碰撞、交融,产生了许多独特的语言现...

软件开发 2025-01-01 阅读1 评论0

机顶盒协议,守护数字生活的新卫士

随着科技的飞速发展,数字家庭逐渐走进千家万户。在这个时代,机顶盒成为了连接我们与丰富多彩的数字世界的重要桥梁。而机顶盒协议,作为保...

软件开发 2025-01-01 阅读1 评论0

语言基础在现代社会的重要性及方法步骤

语言是人类沟通的桥梁,是社会发展的基础。语言基础作为语言学习的基石,对于个人、社会乃至国家的发展具有重要意义。本文将从语言基础在现...

软件开发 2025-01-01 阅读2 评论0

粤语电影,传承文化,点亮时代之光

粤语电影,作为中国电影产业的一朵奇葩,以其独特的地域特色、丰富的文化内涵和鲜明的艺术风格,赢得了广大观众的喜爱。本文将从粤语电影的...

软件开发 2025-01-01 阅读3 评论0

苹果游戏语言,塑造未来娱乐体验的基石

随着科技的飞速发展,游戏产业逐渐成为全球娱乐市场的重要支柱。在我国,游戏产业更是蓬勃发展,吸引了无数玩家和投资者的目光。而在这其中...

软件开发 2025-01-01 阅读1 评论0