什么是无服务器计算?|无服务器定义

无服务器计算是一种按需提供后端服务的方法。服务器仍在使用,但是从无服务器的提供商那里获得后端服务的公司是根据使用情况收费的,而不是按固定的带宽或服务器数量收费。

Share facebook icon linkedin icon twitter icon email icon

无服务器

学习目标

阅读本文后,您将能够:

  • 定义无服务器计算
  • 概述使用无服务器架构的优势

什么是无服务器计算?

无服务器计算是一种按需提供后端服务的方法。无服务器架构允许用户编写和部署代码,而不必担心底层基础设施。从无服务器提供商获得后端服务的公司将根据其计算量来付费,而不必保留和支付固定数量的带宽或服务器,因为该服务可自动扩展。请注意,尽管称为无服务器,但它仍使用了物理服务器,只是开发人员不需要考虑它们的存在。

在Web早期,任何想要构建Web应用程序的人都必须拥有运行服务器所需的物理硬件,这是一项繁琐而昂贵的工作。

之后是云,可以远程租用固定数量的服务器或一定数量的服务器空间。租用这些固定服务器空间单元的开发人员和公司通常会过度购买,以确保流量或活动的激增不会因为超过每月限额而中断其应用程序。这意味着通常支付的大部分服务器空间都浪费了。云供应商已经引入了自动扩展模型来解决该问题,但是即使是自动扩展,也可能因为恶意活动激增(例如 DDoS 攻击)而产生非常昂贵的成本。

无服务器的优势

无服务器计算允许开发人员在灵活的“按需付费”的基础上购买后端服务,这意味着开发人员仅需为使用的服务付费。这就像从每月固定限额的手机数据套餐切换到只为实际使用的每个字节数据收费的套餐一样。

“无服务器”一词在某种程度上具有误导性,因为它仍然有服务器提供这些后端服务,但是所有服务器空间和基础设施问题都由提供商处理。无服务器意味着开发人员可以完全不用担心服务器。

什么是后端服务?前端和后端之间有什么区别?

应用程序开发通常分为两个领域:前端和后端。前端是用户看到并与之交互的应用程序部分,例如视觉设计。后端是用户看不到的部分。其中包括应用程序文件所在的服务器以及持久存储用户数据和业务逻辑的数据库。

应用程序的前端与后端

例如,我们可以想象一个卖音乐会门票的网站。当用户在浏览器窗口中键入请求时,浏览器会将请求发送到后端服务器,后端服务器以网站数据作为响应。然后,用户将看到网站的前端,该前端将包括文本、图像和供用户填写的表单字段。然后,用户可以与前端上的表单字段之一进行交互,以搜索他们喜欢的音乐表演。当用户单击“提交”时,这将触发另一个对后端的请求。后端代码检查其数据库,以查看是否存在具有该名称的表演者,如果存在,则会反馈下次表演的时间以及有多少可售的票。然后,后端会将数据传递回前端,前端将以用户能理解的方式显示结果。同样,当用户创建一个帐户并输入财务信息以购买票时,前端与后端之间将发生另一次来回通信。

无服务器计算可以提供什么样的后端服务?

大多数无服务器提供商都为其客户提供数据库和存储服务,并且许多无服务器提供商还具有功能即服务(FaaS)平台,例如 Cloudflare Workers。这些平台可以在不存储任何数据的情况下在边缘执行代码。

无服务器计算的优势是什么?

  • 降低成本 – 无服务器计算通常具有很高的成本效益,因为传统的后端服务(服务器分配)云提供商经常导致用户为未使用的空间或空闲的 CPU 时间付费。
  • 简化可扩展性 – 使用无服务器架构的开发人员不必担心扩展其代码的策略。无服务器供应商可按需处理所有扩展。
  • 简化后端代码 – 使用 FaaS,开发人员可以创建简单的功能,这些功能独立地执行单个目的,例如进行 API 调用。
  • 加快周转时间 – 无服务器架构可以大大缩短产品上市时间。开发人员无需通过复杂的部署过程实施错误修复和新功能,而是逐个添加和修改代码。