服务
关于
CloudProse博客
无服务器

什么是无服务器,为什么如此?

安迪·沃宗(Andy Warzon)Trek10
安迪·沃宗(Andy Warzon) | 2016年8月4日

2016年8月4日,星期四

当您听到“无服务器”时,我知道您在想什么……哦,男孩,另一个流行语!我知道了。在两个层面上,这是一个令人困惑的问题:

  • 仍然有服务器!我们只是在谈论服务器之上的新抽象,但是服务器当然仍然隐藏在堆栈中。
  • 很长时间以来,已经有抽象的服务隐藏服务器! SaaS和PaaS,即。这不是一个新的想法。

那有什么不同呢?好吧,实际上,一旦您克服了这个流行词,就会有很多事情发生。在我们看来,这里有一个基本想法实际上是很重要的。

服务和功能是平台抽象和部署单位

在典型的平台即服务中,单片应用程序是平台的抽象和部署单位。这有很多缺点。因此,完全托管的平台通常在IT领域中保留着利基作用。对服务/功能的抽象级别的更改消除了以下大多数缺点:

传统PaaS无服务器
高度策划最小限度的管理:功能在Linux容器中运行。本机支持几种语言
并且您可以携带自己的二进制文件来支持任何语言。
单个整体应用可能是扩展方面的挑战与功能和服务的内在解耦,它们可以独立运行并几乎无限扩展
引擎盖下方的大黑盒限制了可定制性通过连接各个功能和服务,该系统可以高度自定义,非常适合
复杂的体系结构或各种企业/安全要求

甚至更好的是,无服务器架构保留了平台抽象的所有传统优势,以及其他一些优势:

  • 无需管理服务器,无需配置操作系统或无需安装安全补丁程序
  • 可伸缩性得到解决,无需群集或自动伸缩即可管理
  • 容错解决
  • 所有基础架构都是代码定义的。实际上,它只是成为应用程序的另一个组件。
  • 每个请求的成本比例(在AWS 拉姆达中,是每100毫秒的执行时间)。成本与使用尽可能紧密地联系在一起,这通常使其成本效益大大提高。
  • 像这样的工具简化了配置和部署 无服务器框架,因此DevOps团队可以专注于自动化管道和其他软件质量流程。

那么,到底什么是无服务器?

好的,关于抽象的足够讨论。在更具体的层面上,无服务器到底意味着什么?

无服务器的核心是功能即服务的云产品。

AWS在2014年秋季发明了此类 拉姆达. 蔚蓝, Google计算, IBM Bluemix,以及其他竞争对手迅速追随竞争对手,但Lambda是先驱,也是迄今为止最成熟和使用最广泛的。

此处的基本思想是,您上传代码,并在需要时将其作为独立容器运行,并具有所需的并发性。您无需担心容器编排,操作系统配置或底层服务器……只需上传代码并运行功能。

但是,至关重要的是,无服务器架构不仅仅依赖于云功能。在AWS中,典型的无服务器架构由以下AWS服务组成:

  • 拉姆达
  • HTTP端点的API网关,使您的功能成为RESTful服务
  • S3投放静态内容
  • 像DynamoDB这样的数据库可以持久保存应用程序数据
  • 以及许多其他组件。

在接下来的文章中,我们将更深入地研究无服务器架构,并让您更好地了解如何使用无服务器架构下一个解决方案。

作者
安迪·沃宗(Andy Warzon)Trek10
安迪·沃宗(Andy Warzon)

创办人& CTO

创办人&CTO Andy一直在AWS上进行开发已有十多年,并且是AWS认证解决方案架构师-专业人士。