写点什么

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

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

评论

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

基于JSP实现学校社团管理系统

Java 程序员 后端

堪称全网最全的JAVA面试复盘笔记(23个技术栈)5000字解析!冲击大厂必备

Java 程序员 后端

基于java SSM图书管理系统简单版设计和实现

Java 程序员 后端

日均订单量超1500,百度萝卜快跑甩掉Waymo

脑极体

基于NFS存储建立WEB群(PCS工具)

Java 程序员 后端

图像处理网站

Java 程序员 后端

基于iscsi存储的kvm动态迁移(V2V)

Java 程序员 后端

国庆临近,字节后端开发3+4面,终于拿到秋招第一个offer

Java 程序员 后端

基于java的连连看游戏设计

Java 程序员 后端

基于SSM开发实现中药制剂网站系统

Java 程序员 后端

哭了,我居然回答不出来女同事的问题:索引为什么能提供查询性能---

Java 程序员 后端

工作五年之后,对技术和业务的思考

程序员 技术 职场 互联网人 业务

基于Java和Bytemd用120行代码实现一个桌面版Markdown编辑器

Java 程序员 后端

基于SSM的药店管理系统

Java 程序员 后端

如何基于 React Native 快速实现一个视频通话应用

声网

flutter 人工智能「

基于二叉树实现Map,就是这么优秀!

Java 程序员 后端

四、StringRedisTemplate 和RedisTemlate有什么不同

Java 程序员 后端

因为一次 Kafka 宕机,我明白了 Kafka 高可用原理!

Java 程序员 后端

【死磕 Java 基础】 — 谈谈那个写时拷贝技术(copy-on-write)

chenssy

11月日更 死磕 Java 死磕 Java 基础

基于 ElasticSearch 实现站内全文搜索

Java 程序员 后端

基于java SSM springboot学生信息管理系统设计和实现2

Java 程序员 后端

基于JSP实现OA办公系统

Java 程序员 后端

Win11上openvino_notebooks环境搭建

IT蜗壳-Tango

IT蜗壳 OpenVINO 11月日更

推荐你一个正则表达式网站

卢卡多多

正则表达式 11月日更

基于vue+SpringBoot+MyBatis的开源多商户商城系统,可二次开发

Java 程序员 后端

模块三作业

心怀架构

万文讲解知乎实时数仓架构演进

大数据老哥

基于 ElasticSearch 实现站内全文搜索(1)

Java 程序员 后端

基于java+jsp的汽车租赁系统

Java 程序员 后端

喝了杯咖啡,我突然对MySQL锁、事务、MVCC-有了新的认识!

Java 程序员 后端

基于java SSM springboot学生信息管理系统设计和实现2(1)

Java 程序员 后端

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