写点什么

软件技术栈商品化:应用优先的云服务如何改变游戏规则

  • 2023-04-29
    北京
  • 本文字数:1574 字

    阅读完需:约 5 分钟

软件技术栈商品化:应用优先的云服务如何改变游戏规则

云服务的发展影响了开发人员构建分布式应用程序的方式。在 QCon 伦敦大会上,Diagrid公司的产品经理Bilgin Ibryam谈到了原生云技术(如 Dapr)与以开发者为中心的云服务之间的重叠。

 

Ibryam 从如何看待从单体到微服务的转变以及接下来会发生什么开始。此外,他还讨论了基础设施将如何以云服务的形式发生演变,以及它将如何改变架构。

 


在演讲中,他从基础设施和应用程序趋势的角度讨论了在云计算时代之前或云计算早期、计算优先的云和应用优先的云时代构建应用程序的不同阶段(时间线)。

 

Ibryam 先是讨论云计算早期或云计算之前的时代,也就是单体应用程序时代。在那个时代,云计算还没有成为主流,微服务还没有出现。开发人员必须使用任何可以实现业务逻辑的一切东西,如异步交互(消息传递)、打包程序和缓存。此外,Dev 团队负责的应用程序层和由 Ops 团队管理的基础设施之间也存在区别。

 


接下来,Ilryam 讨论了早期云计算时代之后的内部架构。2010 年之后,人们对应用程序开发重新产生了兴趣,随后出现了一些主要的软件开发趋势,直到今天仍然具有影响力。人们可以使用C4模型4+1架构模型视图来可视化和描述架构,这为他们提供了不同的方法来观察架构。Ibryam 采用了更直接的方法,将架构分为两个层次:内部架构和外部架构。内部应用程序架构由开发人员构建,他们可以完全控制所有的东西,包括应用程序不同的层,或者如他所说的——容器镜像中的所有内容。从 Ops 角度来看,它就是一个黑盒。外部应用程序架构是与应用程序交互的所有内容的集合,包括消息代理、数据库,甚至是云服务。Ops 让它变得可靠、可观察,等等。他讨论了一些影响单体应用程序开发的架构设计方法,例如领域驱动设计、六边形架构、洋葱架构和干净架构(Clean Architecture)。随后出现的 12 因素(12-Factor)应用和微服务原则让单体应用架构变成了一种反模式。

 

在早期的云时代之后是计算优先云,在这个时代,单体应用程序开始向微服务转变。内部应用程序架构的变化和云的出现导致了应用程序及其基础设施之间的分离集成。

 


在讨论“计算优先”时,Ilbryam 详细介绍了应用程序内部架构和云提供的计算。它是应用程序和计算机之间的契约(集成绑定),无论是容器、函数还是无服务器应用程序。它发生在双方的 API(操作调用,如资源需求、部署、配置和度量)之间。通常由 Ops 团队负责。

 

接下来,Ilbryam 再次讨论了随着云计算的出现,应用程序外部架构如何随着时间的推移而发生变化。然后再次提到了应用程序绑定的概念,只是这次说的是位于应用程序之上的云服务(由开发人员负责),而不是底层的基础设施。

 


面向云服务的集成绑定可以移动到另一层,比如分布式应用程序运行时(Dapr)。作为对比,Ibryam 提到了 Google Cloud Event Arc、AWS EventBridge 和 Azure Event Grid,它们都是特定于云的,而 Camel 是语言无关的,Dapr 则是两者兼而有之。

 

最后,Ibryam 谈到了应用优先的云,网络服务正变得越来越以应用为中心,并诞生了集成云:为开发人员构建的托管服务的集合。

 


应用优先的生态系统将提供与事件处理服务(如 Azure Eventgrid)的异步绑定、与服务(如 AWS Step Functions)的有状态绑定、与服务(如 Vercel Edge Middleware)的同步绑定,以及与计算服务(如 AWS ECS、Azure Container Apps 和 Google Cloud Run)的计算绑定。通信将采用遵循 OpenAPI 规范的 API 进行。

 

最后,Ibryam 总结他演讲的关键要点:

  • 专注于区分业务逻辑,重用无区别的商品化功能。

  • 使用支持标准可移植性的开放计算和开放集成绑定。

  • 可移植性与应用程序无关,它是关于模式、实践、工具和人。

 

原文链接

https://www.infoq.com/news/2023/03/application-first-cloud-services/


相关阅读:

不只是黑盒测试:测试工程师如何识别和消除代码坏气味?

ThoughtWorks CTO:2025 年之前,我们会看到架构的演进,但不会看到革命

有状态自动扩展系统的设计模式提议


2023-04-29 08:007104

评论

发布
暂无评论
发现更多内容

JavaScript类型转换

源字节1号

2022年广州市等保测评公司新排名看这里!

行云管家

网络安全 等保 等保测评 广州 等保测评公司

FinClip 前端之 VUE 核心原理总结

FinClip

【直播回顾】OpenHarmony知识赋能第五期第五课——多媒体子系统之视频解读

OpenHarmony开发者

OpenHarmony 多媒体

Google Guava中EventBus使用不当会导致什么故障?

BUG侦探

kafka Guava EventBus

Niobe开发板:基于OpenHarmony操作系统进行多线程(多任务)开发

拓维信息

OpenHarmony

What? 从小程序反向生成App?!

FinClip

代码重构,真的只有复杂化一条路吗?

华为云开发者联盟

代码 代码重构 过度设计 代码设计

盲盒APP开发的六大功能模式基础设置

WDL22119

盲盒商城 盲盒 盲盒开发 盲盒小程序开发 小程序开发

涛思数据与中天钢铁签署战略合作协议,加速钢铁行业的数字化发展

TDengine

数据库 tdengine

数据分析软件有哪些分类?

清林情报分析师

数据分析 数据可视化 知识图谱 分析软件 分析工具

大数据培训在 Presto 中使用哈希改善动态集群缓存命中率

@零度

飞书、钉钉和企微的三巨头之争下,其他厂商在移动平台赛道如何奋起直追?

BeeWorks

520,用Python定制你的《本草纲目女孩》

华为云开发者联盟

Python 华为云 modelarts 本草纲目女孩 MoXing

使用 jMeter 对需要 User Authentication 的 Restful API 进行并发负载测试

汪子熙

Java Jmeter 性能测试 SAP 5月月更

如何在 Web 应用里消费 SAP Leonardo 的机器学习 API

汪子熙

机器学习 前端开发 前端框架 SAP 5月月更

架构实战营 第 6 期 模块六课后作业

火钳刘明

#架构实战营 「架构实战营」

31点经验分享与吐槽

老白鹿

喜大普奔 | FinClip Hackathon 2022 结果宣布, Top3 项目出炉!

FinClip

许北林:我为什么加入OpenHarmony生态?又为什么要做“启航KP”开发套件?

OpenHarmony开发者

OpenHarmony 开发者故事

【小知识】云管理平台与一般管理系统有什么区别?

行云管家

云计算 云管理平台 云管理

520,解锁开发者的专属浪漫

葡萄城技术团队

情人节 520

AI简报-Image Colorization调研

AIWeker

深度学习 5月月更 AI简报 Image Colorization

FinClip SaaS 版上线啦

FinClip

比渗透测试更有用,红队演练该如何开展?

青藤云安全

业务逻辑的灵魂在哪里?

清林情报分析师

数据分析 数据建模 数据可视化 分析软件 分析思维

作为软件工程师,给年轻时的自己的建议(上)

禅道项目管理

程序员 工程师 职业成长

这知识点真细,Python获取HTTP响应头和响应体

梦想橡皮擦

5月月更

thinkphp 中 fetch 方法怎么用

CRMEB

年薪80W,在大厂呆了10年的我,被裁得心服口服

博文视点Broadview

Seata 企业版正式开放公测

阿里巴巴云原生

阿里云 开源 云原生 seata

软件技术栈商品化:应用优先的云服务如何改变游戏规则_服务革新_Steef-Jan Wiggers_InfoQ精选文章