【问题标题】:How to switch provider serverless framework?如何切换提供者无服务器框架?
【发布时间】:2018-07-23 18:55:55
【问题描述】:

我在 AWS Lambda 上使用无服务器框架部署了一些功能。我想将提供商切换到 IBM Functions,因为他们使用的是 OpenWhisk,而且这是一个非常酷的开源项目,由 apache 提供支持。

我假设仅仅在 yml 中更改提供者是行不通的,因为 openwhisk 函数的签名与 lambda 不同。另外,我在我的函数中使用了上下文对象,但是 openwhisk 没有将它作为参数传递。

如何进行此切换? (或者我应该说迁移?) 如果我不能以透明的方式切换到另一个提供商,为什么会说 Serverless 与云无关?

提前致谢!

【问题讨论】:

    标签: lambda serverless-framework


    【解决方案1】:

    无服务器框架是一种工具,可以处理所有耗时的任务,否则您需要使用 Web 控制台手动执行这些任务,并允许您在给定提供商的基础架构上快速安装处理程序功能,但它没有t 实际上以任何方式转换这些函数,当您在 AWS 或 Azure Web 控制台中看到这些函数时可以看到(我假设 IBM 也是这种情况,但我还没有使用过那个提供程序)。

    这意味着只要提供者之间存在任何差异 - 例如不同的上下文对象、不同的事件数据、不同的请求响应方式等 - 您目前需要自己处理这些差异。

    当我第一次发现它时,这也让我感到惊讶,我的想法是编写一个简单的抽象层来处理 AWS 和 Azure 之间的这些差异,并将处理程序写入该通用抽象而不是目标提供程序.

    如果这对其他人有用,那么我想我可能会为无服务器框架开源该微框架。

    但最重要的是,据我所知,在撰写本文时,无服务器框架本身并不能处理部署到不同提供商的功能之间的差异。如果我错了,请在 cmets 中纠正我。

    【讨论】:

    • 感谢您的回答 :) 我个人很乐意看到您开发的微框架。也在考虑开发一些抽象层,唯一的遗憾是该函数的功能将仅限于不同环境的“gcd”(即不再可能使用 aws 支持的 context.memoryLimitInMB)
    猜你喜欢
    • 2017-03-05
    • 1970-01-01
    • 2010-11-11
    • 2017-08-28
    • 2021-12-15
    • 2017-01-11
    • 2019-05-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多