【问题标题】:Can a serverless application be moved to a PaaS platform?可以将无服务器应用程序迁移到 PaaS 平台吗?
【发布时间】:2018-09-23 15:48:51
【问题描述】:

我构建了一个无服务器应用程序(共享驱动器),用户可以在其中通过网页将视频和图像上传到 S3 存储桶。对上传媒体的一些处理是在上传操作(视频转码、图像缩略图创建)时完成的。为此,编写了两个 Lambda 函数。 无服务器应用程序使用 AWS Lambda。

我想知道我是否可以将此应用程序移动到像 Elastic Beanstalk 这样的 PaaS 平台(使用像 Docker 这样的东西)。

【问题讨论】:

    标签: amazon-web-services docker aws-lambda amazon-elastic-beanstalk


    【解决方案1】:

    是的,但是根据您实现 lambda 所使用的语言,您可能需要提供一些轻微的填充来将您的 lambda 封装在一个轻量级 HTTP 服务器框架中。

    将代码移出 lambda 的最大障碍不是非常简单的 lambda 接口。但是,您的 lambda 可能调用的任何 AWS 服务都极有可能受到 SDK 和 API 的支持,这些 SDK 和 API 也可以在 lambda 之外的任何上下文中使用,例如在 docker 容器中运行的代码。

    在您的情况下,处理媒体上传到 S3 的代码需要使用 AWS 开发工具包与 S3 对话。该 SDK 在 Lambda 内部和外部都同样有效。

    如果您使用 Python 编写代码,那么 Zappa 是一个流行的包,它抽象了 AWS Lambda 接口,使您可以更轻松地将代码移动到运行 gunicorn 和 gunicorn 的 docker 容器,甚至是不同的云提供商。

    您还必须自己配置和构建 docker 容器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-06
      • 2020-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-14
      • 2015-02-23
      相关资源
      最近更新 更多