AWS推出全新容器化服务的App Runner

AWS新推出的容器化服务AWS App Runner,让用户可以将任何语言撰写的网页应用程序和API,以简单的方式部署到云计算中,官方提到,由于AWS App Runner使用起来非常简单,即便缺乏管理容器和基础设施经验的团队,也能通过连接程序代码存储库,由App Runner将应用程序打包成容器,部署到云计算。

AWS表示,容器已经成为打包网页应用程序的默认方法,但是即便提高了速度、生产力和一致性,但是容器开发工作流程仍然非常繁琐。部署流程可能包含设置负载均衡器、域名、TLS,还要创建CI/CD工作管线,最后将应用程序部署到容器服务。

虽然AWS Cloud Development Kit(CDK)提供了一套开放源码软件开发框架,让开发者可以使用熟悉的程序语言,定义云计算应用程序资源,而且CDK也提供高端组件,用户可利用经验证的默认值设置云计算资源。但官方提到,虽然CDK所提供的样板项目,非常适用于部署大型应用程序,但是当开发者只是想要部署和缩放单个容器镜像文件的时候,这些工作又显得太过麻烦。

AWS提供许多服务让用户细致地控制容器化应用程序,但是官方表示,他们收到不少用户要求,希望他们可以提供处理容器环境的配置和运营的服务。因此AWS开发了App Runner,用户可以将服务指向应用程序的程序代码,或是容器存储库,App Runner就能够自动执行并且缩放云计算应用程序,这个过程用户不需要参与配置和管理基础设施服务。

值得注意的是,App Runner将容器执行实例的文件系统为临时存储,文件皆为暂时性的,像是用户暂停并且恢复App Runner服务时,文件不会持久存在,无状态应用程序并不能保证,文件在单一请求的处理中会持续存在。

但是存储的文件确实会在生命周期间,占用App Runner服务的部分存积分配,AWS表示,虽然无法保证临时存储的文件,可以在请求中持久保存,但是在特定情况下,这些文件的确会被持久存储,像是在处理请求时,当将来的请求可能需要使用这些文件,用户则可以缓存应用程序下载的文件,而这将可以加快之后请求的处理速度。

但官方又提到,用户的程序代码设计,不应该假设当前请求的文件仍然存在,而且为了确保缓存,用户应该使用高吞吐量且低延迟,像是Amazon ElastiCache等内存资料存储。

AWS App Runner现在已经在美东、美西和欧洲上线,亚太则在东京地区提供,用户可以将App Runner、AWS管理控制台与AWS Copilot CLI一起使用。