“无服务器”和“完全托管”之间有什么区别?

Rim*_*Rim 8 google-cloud-platform google-cloud-dataflow serverless google-cloud-firestore

根据 Google Cloud 文档,Cloud Dataflow 是无服务器的,而 Cloud Firestore 是完全托管的。如果无服务器意味着基础架构和资源由云提供商管理。那么这两种范式有什么区别呢?

gui*_*ere 8

这两个词没有脚本定义。无服务器和完全托管非常接近并且共享主要概念:不要担心基础架构,专注于您的业务价值。

对我而言,在大多数 Google 产品中,无服务器意味着“按使用付费”。没有流量,你什么都不付,大量的流量,自动缩放,你根据流量付费。

Cloud Run、Cloud Function、AppEngine 标准、firestore、datastore、dataproc、dataflow、ai-platform 都是无服务器的例子。

其他服务是托管的,但不是无服务器的,例如 Cloud SQL、BigTable 或 Spanner。您始终拥有最少数量的 VM/节点,并且您为这些付费,无论流量与否。但是,您无需担心:修补、更新、网络、备份、HA、冗余(...)都为您管理。AppEngine flex 属于这一类。

最后,您有混合产品,例如 Cloud Storage 或 BigQuery:您按使用处理 (BigQuery) 或流量 (Cloud Storage) 付费,但如果您没有流量,则始终对存储收费。

这是针对 GCP 的。如果您寻找其他云提供商,则定义不一样。例如,对于 AWS,Lambda 和 Fargate 都是 Serverless 产品。但是对于 Lamba,没有流量 = 0 帐单,Fargate 至少保持 1 个 VM,并且您需要为此付费(不要扩展到 0)。

小心,无服务器成为流行和营销词。请注意这对您和您的用例意味着什么!