想象一下,如果你把所有的时间都花在构建令人惊叹的应用程序上,然后部署它们,而没有把任何时间花在管理服务器上。无服务器计算可以让你做到这一点,因为扩展和运行应用程序所需的体系结构是为你管理的。对于开发者来说,基础设施一直是个问题。无服务器计算对他们来说是一个很大的解决方案,因为它减轻了他们的负担。
无服务器计算是对服务器、操作系统和基础设施进行抽象的技术。它是一种云计算执行模型,云提供商在其中动态管理机器资源的分配。当我们构建无服务器应用程序时,它帮助我们将注意力从基础设施问题上移开,因为我们不需要管理任何服务器。开发人员可以专注于他们的核心产品,而不用担心管理操作系统或配置。这样可以节省开发人员的大量时间和精力。他们可以利用单一服务(如S3用于存储或Auth0用于身份管理)和弹性计算机平台(如AWS Lambda或Microsoft Azure)来执行代码。这样的无服务器系统可以增长、扩展和发展,而不需要开发人员反复记着修补web服务器。
无服务器应用程序的主要优点是:
- 不需要定期维护任何服务器。此外,我们还没有为其安装软件或平台。
- 在无服务器计算中,应用程序的扩展非常灵活。它们可以通过调整运行应用程序所需配置的容量来自动缩放。例如:内存、处理器要求等。
- 它们具有内置的可用性和容错性。我们不必为这些功能确定架构师,因为它们默认由运行应用程序的服务提供。
- 你不必为闲置容量付费。没有必要为计算和存储之类的事情预先或过度提供容量。例如,代码未运行时不收费。
无服务器计算比购买具有所需配置的服务器更具成本效益。诸如更高效地对机器的底层资源进行装箱等功能可以使其比配置自动缩放组更具成本效益。
一些著名的无服务器计算平台:
-
AWS lambda
它代表亚马逊网络服务公司Lambda。它是亚马逊的平台,只在我们需要的时候执行我们的代码,并且具有自动伸缩的功能,从每天几次请求到每秒数千次。我们必须为使用它所花费的时间付费,当我们的代码没有运行时也不收费。
-
微软Azure
这是微软提供的平台。它还提供了所有的功能,在这里,我们还必须为使用其服务的时间付费。众所周知,它可以提高开发人员的生产力,专注于业务目标,并构建智能应用程序。
-
谷歌云平台
这是谷歌基于无服务器计算的在线平台。它是一套云计算服务,运行在谷歌内部用于其最终用户产品的相同基础设施上