首页 > 解决方案 > “无服务器”和“完全托管”有什么区别?

问题描述

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

标签: google-cloud-platformgoogle-cloud-firestoregoogle-cloud-dataflowserverless

解决方案


这两个词没有脚本定义。Serverless 和Fully managed 非常接近并且共享一个主要概念:不用担心基础设施,专注于您的业务价值。

对我来说,在大多数 Google 产品中,无服务器意味着“按需付费”。没有流量,你什么都不付,流量很大,自动扩容,你按流量付费。

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

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

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

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

小心,serverless 成为一种流行的营销词。请注意它对您和您的用例意味着什么!


推荐阅读