
AWS推出本地模拟器服务AWS Emulator,加速应用开发测试
来源标题:AWS unveils local emulator service to help enterprises accelerate app development and testing
AWS发布本地模拟器服务AWS Emulator,让开发者和AI编程工具无需开通真实云资源即可在本地构建、部署和测试依赖AWS的应用。该服务在本地复刻AWS各项服务的API并暴露本地HTTP端点,开发者通过设置AWS_ENDPOINT_URL环境变量即可让现有代码和测试指向本地运行。AWS称这有助于缩短开发时间并降低相关成本。
以下正文由 AI 翻译自 InfoWorld(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
AWS于周三为其云服务推出了一款新的本地模拟器服务,旨在帮助企业加速应用开发和测试。
该服务名为AWS Emulator,开发者和AI编程agent可以在自己的机器上构建、部署和测试依赖AWS的应用,无需预置真实的云基础设施,也无需为此付费,从而有可能缩短开发时间并降低相关成本,这家超大规模云厂商在声明中表示。
为此,AWS Emulator在本地复刻了AWS各服务的API,并暴露一个本地HTTP端点,AWS Command Line Interface(CLI)、软件开发工具包(SDK)和编程agent可以使用与云端交互时相同的API来访问该端点,声明补充道。
开发者可以通过设置AWS_ENDPOINT_URL环境变量将这些工具重定向到本地端点,使现有应用代码和测试无需修改即可针对模拟的AWS服务运行,声明进一步表示。
本地测试加速开发
HFS Research执行研究负责人Ashish Chaturvedi表示,这项新服务解决了软件开发中开发者日益面临的一个问题:需要快速、反复地测试日益复杂的云应用,同时避免将其部署到云端所带来的成本和运维开销。
“开发者可以测试涉及S3、Lambda、DynamoDB和API Gateway的多服务工作流,而无需预置任何资源,既避免了AWS费用,也避免了实验往往在共享账户中留下的一堆半成品资源,”Chaturvedi说。
“我确信会有客户在几个月后的云账单上发现被遗忘的测试bucket或闲置实例。这样的客户会欣赏一个在工作完成后就消失的环境,”Chaturvedi补充道。
然而,据Broadcom高级站点可靠性工程师(SRE)Advait Patel表示,该服务更大的优势在于使用AI编程agent的开发者。
“Agent以循环方式工作:写代码、运行、看报错、修复、重复。当每一次循环都打到真实的AWS时,你要等待预置、为资源付费,还要清理agent忘记删除的东西。把这个循环搬到笔记本电脑上,每个周期就从几分钟缩短到几秒,”Patel说。
“团队能获得更快的反馈、更少的遗留测试资源,以及更小的开发账户账单。这也意味着你可以让agent自由尝试,而不必担心它在真实账户中启动昂贵的东西,”Patel补充道。
为CIO带来更快交付和更安全的AI采用
据Chaturvedi表示,降低运维开销和成本的组合反过来可能会吸引那些希望加速软件交付并在整个组织中扩展AI辅助工程的CIO。
“最明显的收益是周期时间。内开发循环中更快的反馈缩短了交付时间,而这会在数百或数千名开发者中产生复合效应,尤其是在AI辅助工程日益普及的情况下,”Chaturvedi说。
“不那么明显的收益是更安全的agent采用。许多CIO犹豫是否让编程agent预置基础设施,因为在真实账户中一次失误就可能代价高昂或造成安全暴露。一个让agent可以自由实验的本地环境,为企业提供了一种扩展AI辅助工程的方式,同时让agent在代码经过测试之前远离真实资源,”Chaturvedi补充道。
功能缺失和保真度差距限制了生产就绪性
据IDC研究总监Devin Pratt表示,尽管AWS Emulator有潜力加速开发和测试,但它存在局限性,可能使企业无法将其作为针对真实云基础设施测试应用的替代方案。
“在发布时,该模拟器不模拟限流或故障、快照和恢复,也不模拟按Region的可用性,而这些对韧性最为重要,”Pratt说。
而据Patel表示,这些差距“正是导致真实故障的那些问题”。
“从SRE的角度来看,限流、部分故障和区域差异恰恰是导致系统在生产中宕机的原因。如果你的测试从未见过429或超时,你的重试和退避逻辑就从未被测试过。所以是的,确实存在虚假信心的风险,尤其是当团队开始把‘本地通过’当作‘可以发布’的状态时,”Patel说。
更何况AWS自己的保真度测量表明,该模拟器尚未准确复现每一项AWS操作。
这家超大规模云厂商通过将API响应与真实AWS服务的响应进行比较,并测试多步骤工作流是否按预期运行,来衡量该服务的保真度。未实现或未经验证的操作会返回HTTP 503错误,而不是被视为成功,它表示。
Patel表示,这种区分很重要,因为针对模拟器的成功测试并不一定保证应用在实际AWS基础设施上部署时行为完全一致。
因此,Patel补充道,开发者需要在部署到生产环境之前,针对真实云环境验证其应用。
据Pratt表示,还存在安全问题,特别是因为该模拟器不对其执行的代码进行沙箱隔离。
Pratt表示,这意味着如果开发者在本地测试的函数中包含了真实的生产凭证,代码仍然可以访问实际的AWS资源,可能使企业面临意外的资源访问或安全风险。
尽管存在这些权衡,这家超大规模云厂商表示,希望采用该服务的企业可以免费下载Emulator,该工具适用于Linux、macOS和Windows,其源代码已在GitHub上发布。
目前,该模拟器支持全部426项AWS服务,并使用Rust构建以最小化CPU和内存消耗,随着AWS发布接口模型的更新,它将支持新服务和API变更,它补充道。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。