写点什么

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

评论

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

超级精灵再进化 smart发布EHD超级电混技术:每一程,比增程更成

极客天地

腾讯Youtu-Agent正式开源,加速推动智能体从研究走向应用

极客天地

Coze教程 | 第2章:Coze开发环境搭建与配置

测吧(北京)科技有限公司

JNPF报表设计,解锁数据呈现新方式

引迈信息

突破性AI设计工具Subframe:可视化React/Tailwind代码生成方案

qife122

前端开发 React

开源能源管理系统 MyEMS:赋能能源高效管理的创新利器

开源能源管理系统

开源 能源管理系统

用先进算力,为智驾提速:华为云CloudVeo智能驾驶云服务正式发布

极客天地

海外达人营销常见误区与破解之道

Wolink

海外社媒营销 海外营销推广 达人营销

国产 AI 再放大招!智谱开源 GLM-4.5V,视觉推理能力“屠榜”全球

测试人

【跨国数仓迁移最佳实践8】MaxCompute Streaming Insert: 大数据数据流写业务迁移的实践与突破

阿里云大数据AI技术

阿里云 数据仓库 数据迁移 MaxCompute

火山引擎多模态数据湖落地深势科技,提升科研数据处理效能

新消费日报

小程序热更新赋能App动态引擎无缝迭代

xuyinyin

合合信息参编《数据产业图谱(2025)》,助力绘制中国数字经济发展新蓝图

合合技术团队

人工智能 大数据 算法

当数据消费者从人变成 Agent,所有软件都将被改写!

白鲸开源

AI 数据仓库 数据 开源商业化 白鲸开源

什么是 Active Directory 迁移?

运维有小邓

AD域 AD域管理 AD域迁移

腾讯再次出手,现在视频号里也能直接召唤元宝了

苍何

阿里云携手MiniMax构建云原生数仓最佳实践:大模型时代的 Data + AI 数据处理平台

阿里云大数据AI技术

阿里云 数仓 Dataworks Minimax

9.4 直播预告|工业时序数据库:从采数到智能决策

Apache IoTDB

睿思芯科正式加入龙蜥社区,携手共建 RISC-V 服务器生态新标杆

OpenAnolis小助手

操作系统 龙蜥生态

从零开始学MCP | MCP 协议核心原理解析

测试人

从零搭建AI应用:Coze还是Dify?看完这篇不再纠结

测吧(北京)科技有限公司

K8s集群+Rancher Server:部署DolphinScheduler 3.2.2集群

白鲸开源

大数据 开源 Kubernetes 云原生 Apache DolphinScheduler

从库存到利润加速器 AI商品计划重塑零售战略

第七在线

通过工具增强 LLM Agent 能力:veRL+ReTool 的完整实践指南

火山引擎开发者社区

字节跳动

闲鱼商品列表API数据解析

tbapi

闲鱼API 闲鱼数据采集 闲鱼商品列表数据 闲鱼关键词搜索接口

SeaTunnel 如何给 MySQL 表做“精准切片”?一篇读懂 CDC 分片黑科技

白鲸开源

MySQL 大数据 开源 CDC Apache SeaTunnel

开源能源管理系统 MyEMS:技术深耕与实践赋能的深度解析

开源能源管理系统

开源 能源管理系统

【硬核干货】把 DolphinScheduler 搬进 K8s:奇虎 360 商业化 900 天踩坑全记录

白鲸开源

开源 Kubernetes 技术分享 Apache DolphinScheduler 奇虎360

态势感知:数字时代的安全前哨与战略支撑

沃观Wovision

态势感知 舆情监测 沃观Wovision 舆情监测系统

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