Serverless 架构研究报告:从头到脚建立流程

阅读时长 7 分钟读完

前言

Serverless 架构是一种被越来越多开发者所青睐的云计算模型,在前端领域也越来越被广泛应用。本文将详细讨论 Serverless 架构的搭建流程,重点包括如何切换至 Serverless 架构、函数编写、本地调试和部署等方面内容。

什么是 Serverless 架构?

Serverless 架构是一种无服务器的云计算模型,它将运维工作从开发者身上转移到云服务提供商那里。在 Serverless 架构中,开发者不再需要在开发过程中考虑服务器的维护问题,而是将重心转向应用业务本身。

Serverless 架构的优势很明显:

  • 在设计和运维方面免受服务器的困扰。
  • 动态、高效的处理是 Serverless 的核心特性。当用户请求应用程序时,Serverless 平台会立即调用相应的代码,而当用户请求结束时,代码也会立即停止执行,从而降低了成本。
  • Serverless 架构是一种完全弹性化的模型,能够随时扩展或缩减资源,无需关注服务器的物理架构。
  • 在可伸缩性和成本方面都非常有优势。

如何进入 Serverless 架构?

要进入 Serverless 架构需要具备以下流程和准备工作:

步骤一:选择适合的 Serverless 平台

目前,云厂商针对 Serverless 架构的支持较为完善,可以选择的平台有阿里云函数计算、腾讯云 Cloud Function、华为云 FunctionGraph、亚马逊 AWS Lambda 等等。

步骤二:准备开发工具

需要选择适用于 Serverless 架构开发的工具集,比如 Visual Studio Code。在编写代码时,需要使用 Node.js 等脚本语言。

步骤三:编写函数

Serverless 架构的核心就是函数(Function),所以需要编写与这个函数相关的业务代码。这个函数通常是一段优化过的代码,能够单独完成特定目的,比如处理数据、生成报告、处理交互等等。

步骤四:本地测试

在编写函数后,需要进行本地测试,确认函数相应的事件和调用关系是否符合要求。可以使用 Serverless 模拟器或框架本地测试。

步骤五:部署函数

完成测试后,将函数上传到云平台,这通常是一个简单的操作,可以使用该平台所提供的命令行界面或客户端实现。

步骤六:配置触发器

部署了函数之后,还需要将函数与其它云服务集成。需要配置触发器来触发函数的执行。目前的云服务支持的触发器类型包括 HTTP 请求、消息队列、对象存储等等。

实例应用

下面我们以阿里云函数计算为例,让大家更好的理解 Serverless 架构搭建流程。

步骤一: 注册和开通阿里云函数计算服务

访问阿里云函数计算官网进行注册和购买服务。

步骤二: 下载安装Funcraft

Funcraft 是一个面向阿里云函数计算(函数计算)场景的客户端工具,可用于支持本地开发、调试和部署函数计算代码。开发人员可以在本地开发自己的函数计算代码,并将代码直接部署到函数计算平台,避免本地代码和远程代码不一致的问题。

步骤三:编写函数

-- -------------------- ---- -------
---- --------

----- - ----- - - --------------

---------------------- - ----- ------- -- -
  -----------------------------------
  ----- ---- - --------------------------------------------
  ----- ------- - ------- ----------
  ----- ------- - ---------------
  ------ -
    ----------- ----
    ----- ----------------
      --------
      --------
    ---
  --
--

步骤四:本地测试

使用 fucraft local invoke 命令可以在本地发起调用并测试函数。

可以看到,我们成功地执行了函数并得到了对应的输出。

步骤五:部署函数

使用 fun deploy 命令可以直接将代码上传到阿里云并创建应用、函数、API 等资源。

-- -------------------- ---- -------
- --- ------
----- --------- ------------
----- ------- -----------
----- ---------- ------------
----- ------------ ------------
----- -------- --

------- --- ------- ------------- -- -- -----------
        ------- --- -------- ------ -- -- -----------
                ------- --- --------- -------- ------ -------
                ------- -------- ------ ---- ----
        -------- ------ ------ -------
------- ------------- ------ -------

步骤六:配置触发器

使用 fun deploy 部署函数时,可以自动创建之前执行函数的操作。

-- -------------------- ---- -------
------- --- ------- ------------- -- -- -----------
        ------- --- -------- ------ -- -- -----------
                ------- --- --------- -------- ------ -------
                ------- -------- ------ ---- ----
        -------- ------ ------ -------
                ------- --- --- -------- -- -- -----------
                        ---- ---------------------------------------------------------------------------------
                        ---  ---------------------------------------------------------------------------------

                --- -------- ------ -------
------- ------------- ------ -------

结语

希望本文能为多数前端开发者切入 Serverless 架构领域提供指导与参考。Serverless 的兴起标志着开发者将更加关注业务逻辑而不是服务器运维问题,我们也希望这篇文章可以帮助有需要的同学更加轻松地切换至 Serverless 架构。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6782288c935627c900fa1d84

纠错
反馈