写点什么

亚马逊云科技 Lambda 引入响应有效负载流

  • 2023-05-24
    北京
  • 本文字数:1204 字

    阅读完需:约 4 分钟

亚马逊云科技 Lambda引入响应有效负载流

亚马逊云科技最近宣布,AWS Lambda 函数可以将响应有效负载以流的方式逐步传回客户端。新特性提高了 Web 和移动应用程序的性能,目前在 Node.js 14.x 及以上版本的运行时以及自定义运行时中可用。

 

响应流帮助开发人员将响应从他们的函数以流的方式传输给他们的用户,而不必等待整个响应完成。对于这项期待已久的特性,可以使用Lambda函数URL和 SDK 来调用其 API,但目前还无法使用 API 网关或应用程序负载均衡器(ALB)对响应有效负载进行流式处理。对于它的优势,首席开发大使Julian Wood是这样的:


在传统的请求-响应模型中,在将响应返回给客户端之前,需要完全生成和缓存响应。客户端等待响应生成会降低 TTFB(Time To First Byte)性能。Web 应用程序对 TTFB 和页面加载性能尤其敏感。

 

响应流是为图像、视频、大型文档或数据库结果等大型有效负载而设计的,它需要用 streamifyResponse()装饰器封装 Lambda 函数处理程序,如下所示:


exports.handler = awslambda.streamifyResponse(	async (event, responseStream, context) => {    	responseStream.setContentType("text/plain");    	responseStream.write("Hello, world!");    	responseStream.end();	});
复制代码

 

其中,新的 responseStream 对象提供了一个流对象,函数可以向该对象写入数据并立即发送到客户端。开发人员可以选择设置响应的 Content-Type 报头来传递关于流的额外信息。Datadog 工程团队负责人AJ Stuyvenberg测试了这一新功能。他评论道:


这次发布可能看起来微不足道,但它解锁了几个关键的用例——对于希望利用服务器端渲染并减少第一字节时间的 Next.js 和 React 开发人员来说尤其如此。

 

新特性目前支持的最大响应大小为 20MB(软限制),流函数的最大带宽吞吐量限制为 16Mbps(2MB/s)。目前,响应流仅在 Node.js SDK 中原生提供,不过开发人员可以在支持其他编程语言的自定义Lambda运行时中实现它。虽然有些开发人员关注的是它的局限性,但 Ampt 首席执行官兼联合创始人Jeremy Daly在其新闻通讯中写道:


该特性不仅让 Lambda 函数可以将响应流逐步返回给客户端以减少 TTFB,而且还允许开发人员超过标准的 6MB 负载限制。

 

云咨询顾问、亚马逊云科技无服务器英雄Yan Cui写了一篇文章,演示了如何使用新的流式响应返回大型对象,而无需将结果存储在 S3 中。

 

Lambda 的响应流并不是云计算领域中第一个可用的选项,Vercel 最近就在 Node.js(Lambda)和 Edge 运行时中提供了HTTP响应流支持

 

亚马逊云科技无服务器模式集合中发布了 Lambda 流应用程序示例。这些应用程序支持用 AWS SAM 来构建和部署资源。流式响应增加了Lambda的网络传输成本,不过,除了每个请求的前 6MB 之外,亚马逊云科技免费套餐现在还包含每月 100GiB 的 HTTP 响应流。


原文链接:

https://www.infoq.com/news/2023/04/aws-lambda-response-streaming/


相关阅读:

亚马逊云科技开源 Mountpoint for Amazon S3,通过挂载点技术简化 Amazon S3 对象存储的使用

容器与无服务器,是竞争对手还是队友?

2023-05-24 08:004094

评论

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

nacos注册中心之服务地址动态感知

急需上岸的小谢

7月月更

设计微服务安全架构

Damon

7月月更

IT运维管理指什么?如何建立有效的IT运维管理系统?

行云管家

运维 IT运维 服务器运维

人工智能展会|2022第十四届南京国际人工智能展览会

AIOTE智博会

人工智能展览会

最右×微帧,高质量的HEIF图片编码压缩技术

微帧Visionular

计算机视觉 HEIF 视频编解码 图片压缩 WebP

C#/VB.NET在 Word 中插入水印

Geek_249eec

C# word 添加水印 VB.NET

云生态大会,随“峰”而来!

天翼云开发者社区

数据治理笔记

老猎人

从0到1 拿下C语言—程序结构及使用示例

一碗黄豆酱

智慧灯杆展会|2022南京国际智慧灯杆及智慧路灯展览会

AIOTE智博会

大咖说·图书分享 | HaaS 物联网设备云端一体开发框架

大咖说

阿里巴巴 物联网 大咖 HaaS

纯css实现:如何做个完美的平行四边形

南极一块修炼千年的大冰块

7月月更

IReport导出PDF字体加粗失效

源字节1号

软件开发 前端开发 后端开发 小程序开发

超实用转型攻略!《2022央国企云原生落地实用指南》重磅发布(附下载链接)

York

云原生 系统架构 数字化转型 信创 国资委中央企业

2022第十四届南京国际智慧城市|物联网|大数据博览会

AIOTE智博会

南京智博会 物联网展览会 智慧城市展览会

6W+字记录实验全过程 | 探索Alluxio经济化数据存储策略

Alluxio

数据湖 数据膨胀 降本增效 Alluxio 大数据 开源

2022第十五届南京国际工业自动化及工业机器人展览会

AIOTE智博会

重磅预告!易观分析联合微软、中央财经大学,共话数字经济

易观分析

数据驱动

架构实战营模块七作业

Geek_Q

AntDB数据库产品入选中国信通院《全球数据库产业图谱(2022)》

亚信AntDB数据库

国产数据库

云原生平台,让边缘应用玩出花!

天翼云开发者社区

CDN 云平台

开源demo| ARCall 小程序开源示例发布

anyRTC开发者

小程序 音视频 视频通话 开源demo ARCall

可观测性提升软件工程质量,观测云出席2022 QECon全球软件质量&效能大会

观测云

瓜分30万奖金!DeepRec CTR模型性能优化天池挑战赛来啦

阿里云大数据AI技术

深度学习

2022第十四届南京国际智慧工地展览会|智慧工地展

AIOTE智博会

智慧工地展览会

百度工程师眼中的云原生可观测性追踪技术

百度Geek说

Java 云原生

如何用度量数据驱动代码评审的改善

思码逸研发效能

数据分析 研发效能 科技 效能度量

【等保常见问题解答】等保测评机构能帮忙做等保整改吗?

行云管家

网络安全 等保 等保测评 等保整改

兼容认证|青云QKCP与观测云完成产品兼容性互认证,携手打造云原生可观测能力

观测云

【字体反爬】猫X眼YingShi,我们又来欺负你了,用到了 OCR 识别技术

梦想橡皮擦

Python 爬虫 7月月更

洞见科技纪凯:隐私计算助力「全链路」金融客户经营

洞见科技

隐私计算

亚马逊云科技 Lambda引入响应有效负载流_服务革新_Renato Losio_InfoQ精选文章