快速入门

更新时间:

本文介绍从开通边缘函数服务到使用边缘函数的全流程,便于您快速上手边缘函数。

前提条件

  • 已在ESA上添加目标站点,且站点状态为已启动,否则请先添加站点,详情请参见添加站点

  • 如果您想通过HTTPS协议访问边缘函数,还需要对站点配置SSL/TLS证书,详情请参见配置边缘证书

步骤一:创建函数

  1. 登录ESA控制台

  2. 在左侧导航栏,选择边缘计算 > 边缘函数

  3. 边缘函数页面,单击创建函数

  4. 创建函数对话框中,您可以选择ESA提供的模板生成函数代码,也可以选择自定义函数。选择自定义函数创建时,需要您后续根据需要自行编写代码。选择完成后,单击创建

    image

  5. 配置函数规格等基本信息,完成后单击创建

    image

    参数

    说明

    函数名称

    请输入函数名称。

    说明

    小写英文字母开头,可包含小写英文字母、数字和中划线,但不能以中划线结尾,名称长度2~41个字符,例如routine-name。函数名创建后无法修改。 

    规格

    函数代码单次执行最多使用的CPU时间(不包含等待网络请求响应的I/O时间),RT最大值120秒,可用内存128 MB。不同规格的费用不同,默认选择5ms规格。更多计费信息,请参见边缘函数计费说明

    • 单个请求可用CPU时间片:5ms(默认)

    • 单个请求可用CPU时间片:50ms

    • 单个请求可用CPU时间片:100ms

    描述

    (选填)函数的描述信息。

    代码预览

    函数代码预览信息。

步骤二:配置触发器

ESA边缘函数中,触发器定义了函数脚本的调用方式。您可以为函数绑定域名,将某个域名流量全部转发至该函数,例如将函数绑定至er.example.com;也可以通过函数路由指定URL上的请求,将某个域名的部分流量转发至函数,例如将er.example.com/test/path/路径流量转发至函数。

  1. 登录ESA控制台

  2. 在左侧导航栏,选择边缘计算 > 边缘函数

  3. 边缘函数页面,选择您创建的函数,单击详情

    image

  4. 详情页面,选择触发器页签,你可以通过配置域名绑定或路由,将域名的流量转发到边缘函数中。

    域名绑定

    域名绑定功能允许您将函数连接至自己的站点域名,在完成域名绑定后,您可以直接使用该域名对函数进行访问。

    例如:您已在ESA添加了站点example.com,您想通过er.example.com访问边缘函数,那么er.example.comer.example.com/userer.example.com/login等请求均会被转发至边缘函数。

    1. 域名绑定单击添加域名

    2. 单击确定

      image

    说明

    绑定完域名后,ESA会在DNS记录中自动添加一条CNAME记录, 您无需手动添加。

    路由

    路由功能允许用户将某些URL映射到函数。当请求与配置的URL匹配时,将由边缘函数处理该请求,否则将继续执行加速回源的ESA流程。如下图所示,当您为example.com站点配置了“example.com/a*”的路由规则后,所以与路由规则匹配的路径访问例如/a、/a1、/a2都会有边缘函数处理,而其它与路由规则不匹配的路径访问例如/b、/c、/d会继续走加速回源或缓存的流程。

    1. 路由单击添加路由

    2. 站点列表中选择目标站点example.com

      image

    3. 输入路由。您可以通过添加前缀或后缀通配符(*)来匹配更多的URL。匹配规则请参见匹配规则

      说明
      • 示例1:路由填写*.example.com/*,表示任何发送到http://www.example.com/http://example.com/的请求都会被转发到边缘函数。

      • 示例2:路由填写example.com/a*,表示任何发送到http://example.com/ahttp://example.com/a1http://example.com/api的请求会被转发到边缘函数。

      • 示例3:路由填写www.example.com/api/*,表示任何发送到 http://www.example.com/api/ 及其子路径的请求(例如 http://www.example.com/api/usershttp://www.example.com/api/products/123)都会请求都会被转发到边缘函数。

    4. 单击确定

    重要

    如果路由输入的是*.example.comwww.example.com这种带有前缀的域名,还需要在ESA的DNS记录中手动添加一条记录,否则访问失败,具体请参见添加解析记录

    匹配规则

    • 路由配置必须同时包含域名主机名和路径URI信息,所以只包含路径URI的路由规则例如“/path”将无法配置。

    • 路由配置通过添加前后通配符“*”的方式来匹配更多请求,通配符“*”支持匹配零个或多个任意字符。例如“example.com/*”将匹配访问example.com的所有请求。

    • 路由配置区分大小写。例如“example.com/a”和“example.com/A”将是两条不同的路由规则。

    • 路由配置不支持配置中间通配符“*”和参数。例如“example.com/*/path”和“example.com/path?param=1”的形式都是不允许的。

    • 当访问请求和多个路由配置都可以匹配时,将优先匹配更早配置的规则项。

步骤三:开发并调试函数

  1. 登录ESA控制台

  2. 在左侧导航栏,选择边缘计算 > 边缘函数

  3. 边缘函数页面,选择您创建的函数,单击详情

    image

  4. 详情页面,选择代码页签,即可开始使用JavaScript ES6语法开发边缘函数。

    image

  5. ESA在控制台代码开发工具右侧提供了一套调试环境,完成代码开发后,您可以先单击保存到调试环境,然后直接在右侧工具栏构造HTTP的请求方法、请求头、请求体,构造完成后单击请求按钮,控制台将直接返回您的请求经过函数处理后的响应结果。

  6. 调试完代码后,单击发布到测试环境,您的边缘函数将在边缘测试节点生效,您可以直接通过绑定Host的方式使用真实客户端发出请求并在客户端查看结果。

步骤四:发布正式版本

  1. 代码调试完毕后,单击生成正式版本

  2. 详情页面,选择版本发布页签,单击目标版本操作列的发布

  3. 选择需要发布的环境(测试环境生产环境灰度环境)。

    image

    说明

    建议的发布顺序:先逐个发布到各个灰度环境,所有灰度环境全部发完后,再发布至生产环境。

  4. 单击确定,所有生产环境的节点都将部署该版本的函数代码。