步骤一:创建函数
登录ESA控制台。
在左侧导航栏,选择。
在边缘函数页面,单击创建函数。
在创建函数对话框中,您可以选择ESA提供的模板生成函数代码,也可以选择业务需要的模板。选择完成后,单击下一步。
配置函数规格等基本信息,完成后单击提交。
参数 | 说明 |
函数名称 | 请输入函数名称。
说明 小写英文字母开头,可包含小写英文字母、数字和中划线,但不能以中划线结尾,名称长度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/路径流量转发至函数。
登录ESA控制台。
在左侧导航栏,选择。
在边缘函数页面,选择您创建的函数,单击详情。
在详情页面,选择触发器页签,您可以通过配置域名绑定或路由,将域名的流量转发到边缘函数中。
域名绑定
域名绑定功能允许您将函数链接至自己的站点域名,在完成域名绑定后,您可以直接使用该域名对函数进行访问。
例如:您已在ESA添加了站点example.com
,您想通过er.example.com
访问边缘函数,那么er.example.com
、er.example.com/user
、er.example.com/login
等请求均会被转发至边缘函数。
在域名绑定单击添加域名。
单击确定。
说明 NS接入的域名:绑定域名后,会自动帮您添加解析。
CNAME接入的域名:绑定域名后,会自动成一个CNAME,需要在域名解析服务商添加CNAME解析。请参考:CNAME解析。
路由
路由功能允许用户将某些URL映射到函数。当请求与配置的URL匹配时,将由边缘函数处理该请求,否则将继续执行加速回源的ESA流程。如下图所示,当您为example.com站点配置了“example.com/a*”的路由规则后,所以与路由规则匹配的路径访问例如/a、/a1、/a2都会有边缘函数处理,而其它与路由规则不匹配的路径访问例如/b、/c、/d会继续走加速回源或缓存的流程。
在路由单击添加路由。
在站点列表中选择目标站点example.com
。
输入路由。您可以通过添加前缀或后缀通配符(*)来匹配更多的URL。匹配规则请参见匹配规则。
说明 示例1:路由填写*.example.com/*
,表示任何发送到http://www.example.com/
或http://example.com/
的请求都会被转发到边缘函数。
示例2:路由填写example.com/a*
,表示任何发送到http://example.com/a
、http://example.com/a1
或http://example.com/api
的请求会被转发到边缘函数。
示例3:路由填写www.example.com/api/*
,表示任何发送到 http://www.example.com/api/
及其子路径的请求(例如 http://www.example.com/api/users
或 http://www.example.com/api/products/123
)都会请求都会被转发到边缘函数。
单击确定。
重要 如果路由输入的是*.example.com
或www.example.com
这种带有前缀的域名,还需要在ESA的DNS记录中手动添加一条记录,否则访问失败,具体请参见DNS记录。
匹配规则
路由配置必须同时包含域名主机名和路径URI信息,所有只包含路径URI的路由规则例如“/path”将无法配置。
路由配置通过添加前后通配符“*”的方式来匹配更多请求,通配符“*”支持匹配零个或多个任意字符。例如“example.com/*”将匹配访问example.com的所有请求。
路由配置区分大小写。例如“example.com/a”和“example.com/A”将是两条不同的路由规则。
路由配置不支持配置中间通配符“*”和参数。例如“example.com/*/path”和“example.com/path?param=1”的形式都是不允许的。
当访问请求和多个路由配置都可以匹配时,将优先匹配更早配置的规则项。
步骤三:开发并调试函数
登录ESA控制台。
在左侧导航栏,选择。
在边缘函数页面,选择您创建的函数,单击详情。
在详情页面,选择代码页签,即可开始使用JavaScript ES6语法开发边缘函数。
ESA在控制台代码开发工具右侧提供了一套调试环境,完成代码开发后,您可以先单击保存到调试环境,然后直接在右侧工具栏构造HTTP的请求方法、请求头、请求体,构造完成后单击请求按钮,控制台将直接返回您的请求经过函数处理后的响应结果。
调试完代码后,单击发布到测试环境,您的边缘函数将在边缘测试节点生效,您可以直接通过绑定Host的方式使用真实客户端发出请求并在客户端查看结果。
步骤四:发布正式版本
代码调试完毕后,单击生成正式版本。
在详情页面,选择版本发布页签,单击目标版本操作列的发布。
选择需要发布的环境(测试环境、生产环境或灰度环境)。
说明 建议的发布顺序:先逐个发布到各个灰度环境,所有灰度环境全部发完后,再发布至生产环境。
单击确定,所有生产环境的节点都将部署该版本的函数代码。