【问题标题】:How does functions as a service ( FaaS) hosting work under the hood?功能即服务 (FaaS) 托管如何在后台工作?
【发布时间】:2020-03-21 11:08:50
【问题描述】:

假设

假设我想推出自己的 FaaS 托管服务,类似于 Lambda,而不是在 Lambda 上

类比

我对其他云服务的抽象理解如下
1. 基础设施即服务 (IaaS):在您的硬件上为租户创建虚拟机。
2. 平台即服务 (PaaS):创建 VM 并运行加载所需环境的脚本。
以上也可以通过 docker images 来实现。

FaaS 呢?

AWS 为 Lambda 函数使用 firecracker VM。但尚不清楚虚拟机是如何开启和关闭的,它们是如何在多租户环境中的多个硬件上进行编排的。有人能解释一下整个生命周期是如何运作的吗?

【问题讨论】:

  • 确切的工作方式是 a) 适当性和 b) 无论如何都要不断变化。不过,FAAS 有很多有据可查的开源实现,主要建立在 Kubernetes 和/或 Docker 之上。只需在网络上搜索 OpenWhisk、Fission、IronFunctions、OpenFAAS 或其他众多实现之一。

标签: aws-lambda google-cloud-functions virtual-machine azure-functions serverless-framework


【解决方案1】:

AWS Lambda 和 Cloud Function 的主要功能可以在 https://cloud.google.com/docs/compare/aws/compute#faas_comparison

我可以包含我所知道的信息,即 Google Cloud Functions。

触发器

云函数可以通过两种方式触发:HTTP 请求或事件触发。 Events and Triggers。这些事件是您的项目中发生的事情:文件在 Cloud Storage 或 Cloud Firestore 中更新。其他事件包括:初始化计算引擎实例 (VM) 或更新存储库中的源代码。

所有这些事件都可以触发 Cloud Function。此函数在触发时在 VM 中执行,该 VM 将接收 HTTP 请求和上下文信息以执行其职责。

自动缩放和机器类型

如果到达云函数的音量增加,则为auto-scales。也就是说,不是让一个 VM 一次执行一个请求。您将有多个 VM 一次处理一个请求。在任何情况下,一次只分析一个请求。

如果您想了解更多信息,可以在official documentation 上查看。

【讨论】:

    猜你喜欢
    • 2017-12-27
    • 2020-09-29
    • 1970-01-01
    • 2015-01-29
    • 1970-01-01
    • 2022-01-23
    • 2020-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多