亮网络解锁器,解锁网络数据的无限可能 了解详情
写点什么

亚马逊云科技 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:003940

评论

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

专访惠众科技|元宇宙应用如何借助3DCAT实时云渲染实现流畅大并发呈现?

3DCAT实时渲染

元宇宙 实时渲染云

腾讯云和ScaleFlux联合推出可计算存储与大容量QLC NAND解决方案

ScaleFlux

腾讯云 数据中心 降本增效 企业级SSD SSD寿命

Flink中的时间及窗口类型

阿泽🧸

flink 三周年连更

中国网约车领域月度观察2023年04月

易观分析

网约车 出行服务

VMware Fusion Pro 13虚拟机永久激活版,VM13最新激活秘钥

魔仙苹果mac堡

VMware Fusion Pro 13 VM虚拟机破解版 VM密钥

云原生应用交付流程安全规范

穿过生命散发芬芳

安全规范 三周年连更

sysMaster: 全新1号进程实现方案,秒级自愈,保障系统全天在线

openEuler

Linux rust 操作系统 openEuler init

Java反射详解

timerring

Java

互联网大厂1000多道 Java面试题及答案整理(2023最新版)

架构师之道

Java 面试

新技术越来越多,作为程序员,我们应该怎么规划职业生涯? | 社区征文

wljslmz

三周年征文

HTTPS 的加密过程及其工作原理

wljslmz

https 三周年连更

2023-05-10:给你一棵以 root 为根的二叉树和一个 head 为第一个节点的链表 如果在二叉树中,存在一条一直向下的路径 且每个点的数值恰好一一对应以 head 为首的链表中每个节点的值,

福大大架构师每日一题

Go 算法 rust 福大大

AI都会写脚本了,传统的运维工程师会失业吗? | 社区征文

wljslmz

AI 运维工程师 三周年征文

Trapcode Particular 2023最新版绿色下载安装 mac/win

魔仙苹果mac堡

AE粒子特效插件 Trapcode Particular插件

好用的 3D 建模软件:Rhino 7 中文版「最新资源」

魔仙苹果mac堡

Rhino 7 犀牛3D建模软件 Rhino 7中文版 Rhino 7破解 犀牛下载

盘古云课堂加入 PolarDB 开源数据库社区

阿里云数据库开源

polarDB PolarDB-X PolarDB-PG PolarDB for PostgreSQL 阿里云瑶池数据库

浅谈如何做好知乎内容营销:需要注意哪些细节

石头IT视角

体验MMGPT本地部署(上)

IT蜗壳-Tango

三周年连更

Python自动化办公神器!1行代码实现文件转PDF,支持Word、Excel、PPT、TXT格式

程序员晚枫

Python PDF

硬核Prompt赏析:HuggingGPT告诉你Prompt可以有多“工程”

无人之路

ChatGPT Prompt

IT知识百科:什么是下一代防火墙和IPS?

wljslmz

防火墙 三周年连更 入侵防御系统

挑战与机遇,全面预算管理的执行计划

智达方通

总有AI想害'朕' 失业,我们该何去何从| 社区征文

穿过生命散发芬芳

ChatGPT 三周年征文

DxO PureRAW轻松获取纯净无瑕疵raw照片~

真大的脸盆

Mac 图像处理 Mac 软件 Raw图像处理软件 图像编辑工具

用户分享 | Dockquery,一个国产数据库客户端的初体验

BinTools图尔兹

用户体验 国产数据库工具

理解并实现自动导入(Auto Import)功能的原理

Lee Chen

JavaScript

适用于mac/win:DR5插件加强版(ps磨皮滤镜) v5.0中文版

魔仙苹果mac堡

DR5插件加强版 DR5白金版 PS一键磨皮插件 Delicious Retouch 中文

在SDN技术盛行的时代,网络工程师需要不断学习新技术跟上时代的步伐 | 社区征文

wljslmz

sdn 三周年征文

C++模板和泛型编程详解

小万哥

c++ 程序员 面试 后端 开发

苹果系统热门爆款软件——Downie视频抓取

魔仙苹果mac堡

Mac 视频下载工具 Downie 4许可证 Downie 4 下载

并发编程-ReentrantLook底层设计

Java你猿哥

Java ssm 重入锁 lock锁 底层实现原理

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