2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

AWS Lambda 将废弃 Go 运行时

  • 2023-09-19
    北京
  • 本文字数:996 字

    阅读完需:约 3 分钟

大小:569.08K时长:03:14
AWS Lambda将废弃Go运行时

AWS Lambda宣布将废弃 go1.x 运行时,仅在 Amazon Linux 2 运行时中支持 Go。该项声明以及年底前需要迁移至定制的 provided.al2 运行时引起了 Go 社区的关注。

 

根据Amazon Linux AMI的生命周期go1.x 运行时将于 12 月 31 日废弃,开发人员应该在此之前迁移至provided.al2运行时。亚马逊云科技的高级解决方案架构师Micah WalterYanko BolanosRamesh Mathikumar解释了其中的收益:

首先,它支持在 AWS Graviton2 处理器上运行 Lambda 函数,与在 x86_64 处理器上运行的函数相比,性价比最大可以提高 34%。其次,它通过更小的部署包和更快的函数调用简化了实现。最后,该变更能够使 Go 与其他可编译为原生代码的语言保持一致,如 Rust 或 C++。


在名为RIP AWS Go Lambda Runtime的文章中,Stax 的工程主管Mark Wolfe表达了不同的意见:

我认为这是一件糟糕的事情,原因有如下几点:现有的 Go Lambda 函数没有自动迁移至新的自定义运行时的路径(……)。其次,这将从 AWS Lambda 控制台中移除 Go1.x 的名称,现在 Go 将会变成另一种运行时,而不是受支持的一等语言。

 

对于 Node、Python 或 Java 等其他语言,Lambda 提供了原生运行时,而 Go 现在只能通过 provided.al2 运行时来使用,这降低了在 AWS 上 Go 作为 serverless 语言的可见性。

 

甚至在 AWS 移除对 Go 的原生支持之前,就有开发人员认为,转而使用自定义运行时有很多优势,比如支持 Lambda扩展、较新的 Amazon Linux 2 执行环境,以及能够统一运行时和处理器程序的代码。Wolfe 评论到:

 

虽然自定义运行时提供了更好的性能和更新的操作系统,但是对于 AWS Lambda 上的许多 Go 开发人员来说,这一改变需要花费一定的精力。AWS 提供的一些自动化辅助和验证有助于减少这一变更带来的冲突和问题。

 

在一个热门的Reddit帖子中,有些 Go 开发人员强调了缺乏沟通的问题,而另一些人则支持这一变更。NightVision 的创始工程师、AWS Serverless Hero Aidan Steele则将关注的重点放在了标记的收益上:

 

我已经在使用更新的运行时了,但我也从博客文章中了解到,AWS SAM 现在可以为更新的运行时构建 Go Lambda 函数了——不再需要 Makefiles!我从 BuildMethod: makefile 切换到了 BuildMethod: go1.x,发现我的 Lambda 包现在是原来的两倍大。这意味着冷启动和部署速度均会变慢。

 

为了减轻对开发人员的影响,公告介绍了如何将函数从 go1.x 运行时迁移到 provided.al2 运行时,以及如何对构建脚本或 CI/CD 配置进行修改。

 

查看英文原文:AWS Lambda Deprecates Go Runtime

2023-09-19 14:404779

评论

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

HertzBeat赫兹节拍 v1.0.beta.6 发布,Linux监控来啦

TanCloud探云

开源 APM 监控 告警

网络安全:绕过MSF的一次渗透测试

网络安全学海

黑客 网络安全 信息安全 渗透测试 安全漏洞

Python迎来31岁生日,蝉联年度编程语言排行榜冠军

Python猫

Python

Kubernetes API规范:为optional的字段使用pointer

工程师薛昭君

API Kubernetes 集群

RocketMQ的tag还有这个“坑”!

中间件兴趣圈

RocketMQ tag 消息过滤

大数据培训十大Hive调优技巧

@零度

大数据 hive调优

743 网络延迟时间

好吃不贵

小程序电商微服务设计

唐尤华

架构实战营

如何消除代码山中那一大坨参数列表

华为云开发者联盟

代码 软件设计 参数 全局变量 参数列表

presto是如何保证作业内存不会发生冲突和溢出

华为云开发者联盟

内存 presto 内存计算引擎 System Pool general Pool

多场景推进 服务网格在联通的落地实践(下)

百度大脑

Redis:在windows环境安装Redis

喀拉峻

redis

最好的 6 个 React Table 组件详细亲测推荐

蒋川

React

Rust的Cow类型

Shine

rust cow

计算机编码规则之:Base64编码

程序那些事

Java base64 nio 程序那些事 3月月更

一文搞定 Flutter 底部弹窗实现

岛上码农

flutter 跨平台 ios开发 Android开发 3月月更

《软件开发的201个原则》思考:4. 高质量软件是可以实现的

非晓为骁

个人成长 软件工程 软件开发

一周热点回顾|虎符交易所上线多链合一;俄央行称加强监控加密资产等P2P交易

区块链前沿News

区块链 虎符交易所

☕️从Java8到Java17的新特性(一):Java8 的新特性

看山

Java java8

聊聊 C 语言和 ABAP 这两门编程语言的关系

汪子熙

c++ 编程语言 C语言 abap 3月月更

深入浅出 Vue3 核心知识点

百瓶技术

Vue 前端 VUE 3.0 源码 vue3.0

昇腾CANN论文上榜CVPR,全景图像生成算法交互性再增强!

华为云开发者联盟

CVPR CANN 图像生成 昇腾AI处理器 图像布局

春分耕种时,AI“现身”田间地头

百度大脑

科幻变现实:喷下即疗愈,生物3D打印绘就生命密码图

脑极体

如何在新公司快速落地

Hockor

Jetpack Compose之 在Compose中使用Navigation导航

黄林晴

android Compose JetPack

WebAssembly技术_JS调用C函数示例_传递参数、方法导出

DS小龙哥

webassembly 3月月更

从 SVN 迁移到极狐GitLab

极狐GitLab

svn 迁移 极狐GitLab

使用 ABAP 开发的一个基于 Web Socket 的小工具,能提高程序员日常工作效率

汪子熙

自动化 前端开发 websocket 程序员进阶 3月月更

Redis集群架构剖析(3):集群处理redis-cli指令

非晓为骁

redis 架构 分布式 redis cluster

5G 和 Wi-Fi 市场与技术的一些思考系列之二

李伟-晨泳

AWS Lambda将废弃Go运行时_编程语言_Renato Losio_InfoQ精选文章