使用无服务器后端加快Web App迭代速度

2020 年 10 月 18 日

使用无服务器后端加快Web App迭代速度

最近,AWS 在一技术系列文章(共 3 篇)中展示了通过构建无服务器后端来加速迭代 Web 应用程序以及跟踪产品需求变化的优势。这些开发方法和架构带来了灵活性,但增加了与云供应商服务的耦合。

AWS 高级开发者布道师 James Beswick 以州立公园的“Happy Path” Web 应用程序为例,解释了这个项目的目标:

本系列介绍如何构建灵活的解决方案来适应用户需求的变化。需求可能会快速发生变化是构建现代 Web 应用程序所要面临的一个挑战,对于那些正在寻找适合其产品市场的新应用程序来说尤其如此。很多开发团队在一开始只构建满足一组需求的产品,但很快就发现需要构建具有不同特性的产品。

第一个版本允许终端用户上传地图和照片,在后续迭代中添加了更复杂的功能,并转向一个全新的市场——餐馆。代码可以在 GitHub 存储库中找到,并可以使用 AWS 无服务器应用程序模型,这是一种用于构建无服务器应用程序的开源框架。

API 层通过调用 Lambda 函数来完成任务,在存储层存储和获取数据,在 Amazon S3 上部署二进制文件,在 Dynamo DB 里存储元数据。业务逻辑被封装在 AWS Step 函数工作流中,Amazon CloudFront 则为最终用户提供内容。

架构总览,来源: https://aws.amazon.com/blogs/compute/using-serverless-backends-to-iterate-quickly-on-web-apps-part-1

第一篇文章介绍了如何部署应用程序、测试上传过程和架构评审。第二篇文章解释了如何使用 AWS Step 函数 (一个用于排序 AWS Lambda Function 的无服务器函数编配器),以及如何部署用于调整镜像大小的自定义工作流。在第三篇(也是最后一篇)文章中,作者展示了如何引入更高级的带有自定义分支和镜像调节的工作流。系列文章以一个示例结束,该示例从最初的想法转到一个不一样的市场,并能够重用大部分逻辑。

来源: https://aws.amazon.com/blogs/compute/using-serverless-backends-to-iterate-quickly-on-web-apps-part-1

在另一篇文章中,James Beswick 在分析无服务器应用程序中的业务逻辑流时评论道:

好的无服务器应用程序具有固有的灵活性,可以在用户需求变化时更快地添加新功能。这是因为工作流的各个部分都是专门化的、松散耦合的。这有助于加快迭代开发,还有助于减少在设计发生变化时需要重写的代码数量。

虽然本系列介绍 AWS 技术并依赖于 AWS 的无服务器应用程序模式,但类似的方法可以在任何为无服务器工作流提供功能和编排的云平台上使用。例如,可以使用 Azure Durable Function Cloud Composer (这是谷歌云平台的服务,基于开源的 Apache Airflow )来实现迭代。

正如 Nick Gottlieb 所建议的那样,依赖无服务器技术并将开发人员从服务器端工作中抽离出来,并不一定要将服务与云提供商绑定。对于一些开发者来说,迭代速度变慢才是他们更担心的,正如 Lumigo 的开发者布道师 Yan Cui 指出的那样:

在你忙于构建自己的云计算解决方案时,一个比你更快进入市场、迭代速度更快的竞争对手会在亚马逊把你锁在自己的王国之前就把你锁在这个市场领域之外。

原文链接

Using Serverless Backends to Iterate Quickly on Web Apps

2020 年 10 月 18 日 09:00 753

评论

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

第二周作业

晨光

Apache Flink 误用之痛

Apache Flink

大数据 flink 流计算 实时计算 数据处理

数仓大法好!跨境电商 Shopee 的实时数仓之路

Apache Flink

大数据 flink 流计算 实时计算 大数据处理

依赖倒置架构

AIK

28岁程序员期权过亿,彪悍从字节退休,网友:酸了酸了!

程序员生活志

程序员 字节跳动 开发 退休

Flink on Zeppelin (4) - 机器学习篇

章剑锋_Jeff

机器学习 大数据 flink 流计算 Zeppelin

免费下载 | 阿里云实时计算整体解决方案白皮书重磅发布!

Apache Flink

大数据 flink 流计算 实时计算 大数据处理

POJO类中布尔类型为啥不让用isXxx命名

Java课代表

看清远处模糊的事,不如做好身边清楚的事

Neco.W

创业心态 未知

红警1游戏开源,代码非常规范。网友:秀色可餐

程序员生活志

游戏开源 红警1

第二周-总结

JI

极客大学架构师训练营

【Week02】框架设计

Aldaron

课程总结

AIK

当你启动Redis的时候,Redis做了什么

老胡爱分享

redis 源码分析 面试题

【大厂面试06期】谈一谈你对Redis持久化的理解?

NotFound9

数据库 redis 后端

面向开发者的 WSL2 安装指南

simpleapples

Python golang Windows 10 wsl

从字符串到常量池,一文看懂String类设计

程序员DMZ

JVM 常量池 intern

Flink作业问题分析和调优实践

Apache Flink

大数据 flink 流计算 实时计算 大数据处理

第二周作业

Aldaron

第二周总结

qqq

极客大学架构师训练营

第二周总结

晨光

Flink 在快手实时多维分析场景的应用

Apache Flink

大数据 flink 流计算 实时计算 大数据处理

20年行业变革与技术演进,当下CDN如何为政企数字化转型加速?

巨侠说

CDN 边缘计算 移动视频

使用WebMaker快速预览Ionic页面效果

davidce

Ionic WebMaker 混合应用开发

TiDB原理解析

Chank

小师妹学JVM之:JDK14中JVM的性能优化

程序那些事

JVM 「Java 25周年」 小师妹 JIT JDK14

第二周-作业

JI

极客大学架构师训练营

《实现领域驱动设计》拆书稿 DDD入门 & 领域、子域和限界上下文

三界

架构 领域驱动设计 DDD

实时即未来?一个小微企业心中的流计算

Apache Flink

大数据 flink 流计算 实时计算 大数据处理

如何构建低延时的直播体验,让互动更实时?

巨侠说

CDN 短视频 直播 视频

数仓系列 | 深入解读 Flink 资源管理机制

Apache Flink

大数据 flink 流计算 实时计算

万亿规模下美团命名服务的演进与业务赋能

万亿规模下美团命名服务的演进与业务赋能

使用无服务器后端加快Web App迭代速度-InfoQ