写点什么

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

  • 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:007060

评论

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

Blinn-Phong反射模型

CRMEB

docker的DNS配置说明

Geek_f24c45

Docker Kubernetes

Netty入门 -- 什么是Netty?

Bug终结者

Java Netty 网络

无人驾驶全家桶:机场“人货场”的改造之路

脑极体

APK修改神器:插桩工具 DexInjector

字节跳动终端技术

android 字节跳动 编译 APK 火山引擎MARS

生态扩大进行中!Apache APISIX 支持 Azure Functions 集成

API7.ai 技术团队

microsoft azure API网关 Apache APISIX

千万级学生管理系统考试试卷存储方案

唐尤华

架构实战营

与阿里云容器服务 ACK 发行版的深度对话第一弹:如何借助 sealer 实现快速构建 & 部署

阿里巴巴云原生

阿里云 容器 云原生 ACK Distro sealer

Apache APISIX 新技能,代理 gRPC-Web 请求

API7.ai 技术团队

gRPC HTTP 网关 APISIX

来看看字节跳动内部的数据血缘用例与设计

字节跳动数据平台

大数据 字节跳动 数据血缘

uni-app 模拟机调试环境搭建

编程三昧

uni-app 前端 开发工具 2月月更

剑指Offer——全方位、多角度掌握企业级开发框架J2EE

No Silver Bullet

jdk8 offer 2月月更 J2EE

Metasploit 如何使用Exploits(漏洞)

喀拉峻

网络安全

外包学生管理系统架构设计文档

李大虾

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

Go 语言快速入门指南:Go 模板介绍

宇宙之一粟

Go 语言 2月月更

Apache APISIX 集成 Open Policy Agent

API7.ai 技术团队

开源 后端 API网关 OPA Apache APISIX

选轻量应用服务器还是云服务器ECS?一图彻底搞懂

阿里云弹性计算

轻量应用 玩转ECS

MASA Framework - DDD设计(2)

MASA技术团队

C# .net .net core 框架 Framework

Apache APISIX 集成 Google Cloud Logging

API7.ai 技术团队

Google 网关 APISIX Google Cloud

视频回顾|Pulsar Summit Asia 2021,案例、运维、生态干货不断

Apache Pulsar

开源 云原生 Apache Pulsar 社区 Pulsar Summit Asia 2021

企业级 APIs 安全实践指南 (建议初中级工程师收藏)

领创集团Advance Intelligence Group

API

从中心走向边缘——深度解析云原生边缘计算落地痛点

阿里巴巴云原生

阿里云 Kubernetes 云原生 边缘计算

案例实践|Apache Pulsar 在移动云智能运维平台的实践

Apache Pulsar

开源 架构 云原生 Apache Pulsar Pulsar Summit Asia 2021

外包学生管理系统的架构文档

张逃逃

JWT Token在线编码生成

入门小站

工具

Linux基础操作:如何在 Linux 中复制文件夹?

Ethereal

Apache APISIX 集成 HashiCorp Vault,生态系统再添一员

API7.ai 技术团队

开源 安全 后端 API网关 APISIX

学生管理系统架构

Geek_f3e842

「架构实战营」

架构训练营 第三模块作业-外包学生管理系统详细架构设计文档

Geek_16d2b8

架构训练营5期

Apache APISIX 集成 Kafka 实现高效率实时日志监控

API7.ai 技术团队

kafka 开源 日志 网关 Apache APISIX

云服务器ECS选购指南及省钱法宝(强烈建议收藏)

阿里云弹性计算

玩转ECS 选购指南

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