AWS EC2 服务和 AWS Lambda 之间是否有任何实际区别



Amazon Web Services EC2 和 AWS Lambda 之间的实际区别是什么,我使用过 EC2,也阅读过有关 Lambda 的信息,但找不到任何有价值的东西。 你能有人告诉我到底有什么区别吗

Amazon EC2 实例是一个虚拟机。它就像一台普通的计算机 - 它运行操作系统(Windows或各种类型的Linux),您可以连接到它并使用它。您可以安装普通软件包并根据需要运行它。在实例"运行"期间,您需要按秒付费。

AWS Lambda 函数是一段触发运行的代码。在幕后,它运行在一个"容器"上,这是一个额外的虚拟化层,使其非常快。没有操作系统,因为容器平台负责该层。简而言之,某些东西触发了 Lambda 函数,函数运行,然后退出。

Lambda 函数通常只运行几秒钟(甚至不到一秒!它会执行某些操作以响应事件,例如发送到 AWS API Gateway 的请求或上传到 Amazon S3 的文件。它旨在执行一个非常简单的任务(您编写),然后退出。例如,当您在移动电话上运行"天气"应用时,该应用会调用 Internet 上的 Web 服务。它可能会触发一个 Lambda 函数,该函数从数据库中检索天气并返回信息。它可能只运行半秒钟。

AWS 负责运行 Lambda 函数的平台。您只需提供代码,配置触发器即可!无论您的代码每月运行一次还是每秒运行 30 次,AWS Lambda 都会负责部署和运行函数。这个概念被称为无服务器计算,因为您只关心代码,而不是服务器。

经过大量研究,这就是我的理解,如果有人觉得有用,请投赞成票

看待这一点的最简单方法是将 EC2 想象成一个虚拟服务器,运行一个操作系统,预置了存储、内存和 CPU。随着时间的推移,您需要为规格付费。即服务器越大,打开的时间越长,您支付的费用就越多。 Lambda 是一种无服务器服务,可根据事件和触发器执行代码。如果你愿意的话,它是一个函数,它执行你的任务以响应发生的事情。例如,您可以使用 lambda 函数在 JPG 文件上传到 S3 时调整它们的大小。 当然,您也可以构建运行类似代码的EC2服务器来执行相同的操作,但是操作系统开销和成本意味着简单的Lambda函数将更加高效,并且在云中的占用空间,用于运行代码的资源要小得多。

AWS EC2 是 IaaS,可以将其视为在云上运行虚拟机或运行服务器。使用 EC2,您可以获得更多控制权,但要做更多工作,例如修补、维护等。当您使用 ec2 时,您必须为运行实例(服务器)付费,即使您的代码可能不会至少执行一次。

AWS Lambda 是一种与 EC2 不同的技术,它是无服务器的,基本上您只需运行代码而不显式运行服务器。 只需将您的代码上传到云,AWS 就会为您运行服务器。您不必为服务器付费,但执行代码的时间却没有。

相关内容

最新更新