微服务与 Lambda 与无服务器函数的区别

Difference Microservices vs. Lambda vs. Serverless-Functions

我只是想找到一个通用定义

  1. 微服务
  2. Lambda 函数
  3. 和无服务器函数

我的目标是在 Kyma 上实现一个“真正的”微服务——已经实现的关键点是什么,这样我就不会“只是”实现一个功能?

微服务

这是一个不好的名字,大约在 2013-2014 年开始使用。本质上它意味着基于服务的架构——你有一个由多个服务组成的架构。这里最重要的是服务可以由不同的团队拥有,并且可以独立于其他团队和服务开发、测试和部署。

“函数”

这可以是AWS Lambda, Azure Functions, Google Cloud Functions, Google Cloud Run or Kubernetes Knative。这里的“功能”一词主要是营销术语。您可以部署由一个或多个函数组成的代码(与任何其他代码一样)。但它通常只运行有限的时间,有冷启动惩罚,它通常只在您收到事件时按需部署,并且您通常只需为 运行 时间付费。

“无服务器”是同一事物的另一个营销术语。