当您使用ALB部署的业务被全球多地域用户访问时,因公网网络质量不高可能导致网络延迟高、抖动、丢包等问题,影响终端用户使用体验。您可以通过使用全球加速GA实现应用加速,使终端用户访问请求就近接入阿里云,通过阿里云内部的加速网络到达应用服务器。
场景示例
企业在阿里云华东1(杭州)地域使用ALB部署了高可用业务,并计划对全球多地域终端用户提供服务。考虑到跨地域公网网络质量不高,部分终端用户会出现网络延迟高等问题,影响终端用户访问体验。
为了解决这个问题,该企业考虑部署全球加速GA,使终端用户访问请求就近接入阿里云并进行网络加速,从而有效地提升用户的访问体验。
前提条件
已创建和管理ALB实例。
已为ALB实例创建和管理服务器组。
已在ALB的服务器组中分别添加ECS01和ECS02实例,并在ECS01和ECS02中均部署了应用服务。
本文以Alibaba Cloud Linux 3操作系统为例,并使用Nginx配置后端HTTP 80服务。
已注册自有域名并完成备案,且已为自有域名配置DNS解析记录,即已配置了指向ALB的CNAME记录。
已为ALB实例创建HTTP监听或HTTPS监听。如果使用HTTPS监听,需要提前创建并申请证书或者上传第三方证书到SSL证书服务并绑定自有域名。
操作步骤
您可以通过以下两种方式配置GA加速ALB后端应用:
在GA控制台添加ALB作为后端服务,GA配置可自定义。
在ALB控制台一键配置GA,适用于希望快速实现ALB应用加速需求的用户。
在GA控制台添加ALB作为后端服务
步骤一:配置实例基础信息
本文以按量付费的标准型GA实例为例。
在全球加速控制台的 列表页面,单击创建标准型按量付费实例。
在实例基础配置的配置向导页面,配置基础信息,单击下一步。
步骤二:配置加速区域
在配置加速区域配置向导页面,添加加速地域并为其分配带宽,然后单击下一步。
本文以美国(硅谷)地域为例,加速区域添加为美国(硅谷),公网质量类型均配置为BGP(多线),加速区域其他参数配置可保持默认值或根据实际情况修改。
步骤三:配置监听
在配置监听配置向导页面,配置转发协议与端口,然后单击下一步。
本文场景中,协议配置为HTTP,端口配置为80,配置监听其他参数配置可保持默认值或根据实际情况修改。
UDP协议监听不支持添加ALB类型后端服务。
步骤四:配置终端节点组与终端节点
在配置终端节点组配置向导页面,配置终端节点后端服务,然后单击下一步。
本文场景中,地域选择华东1(杭州),后端服务类型选择ALB,后端服务选择目标ALB实例,然后阅读并选中数据跨境合规承诺,终端节点组其他参数配置可保持默认值或根据实际情况修改。
在配置审核配置向导页面,确认全球加速的配置信息,然后单击提交。
步骤五:配置CNAME
将自有域名的DNS解析到GA实例分配的CNAME,使业务流量切换至GA,以实现访问加速。
如果您已有指向ALB的CNAME记录,您可以先指定美国地区来添加指向GA的CNAME记录,以进行测试。待测试成功后,再逐步扩展至其他地区或仅保留指向GA的CNAME记录。
在域名解析页面,找到目标自有域名,在操作列单击解析设置。
说明对于非阿里云注册域名,需先添加域名到云解析控制台,才可以进行域名解析设置。
在解析设置页面,单击添加记录,配置CNAME记录,然后单击确定。
本文场景中,记录类型配置为CNAME,主机记录配置为www,解析请求来源配置为北美洲_美国,记录值配置为GA实例的CNAME,解析记录其他参数配置可保持默认值或根据实际情况修改。
步骤六:验证加速效果
以公网ALB实例、后端服务器部署在华东1(杭州)地域、美国加速区域的客户端访问为例进行测试。
测试加速后网络延迟情况:
浏览器访问
http://<自有域名>
可以正常访问后端服务。多次刷新浏览器,可以在ECS01与ECS02之间切换。执行
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http[s]://<自有域名>"
,查看加速后数据包延迟情况。加速后,返回信息示例如下图所示:
测试加速前网络延迟情况:
浏览器访问
http://<自有域名>
可以正常访问后端服务。多次刷新浏览器,可以在ECS01与ECS02之间切换。执行
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http[s]://<自有域名>"
,查看加速前数据包延迟情况。加速前,返回信息示例如下图所示:
加速效果对比:对比数据参数介绍:
time_connect:连接时间,从开始到建立TCP连接完成所用的时间,单位为秒。
time_starttransfer:开始传输时间。在客户端发出请求后,到后端服务器响应第一个字节所用的时间,单位为秒。
time_total:连接总时间。客户端发出请求后,到后端服务器响应会话所用的时间,单位为秒。
参数
加速后(单位:秒)
加速前(单位:秒)
加速数据参考(单位:秒)
加速数据参考(百分比)
time_connect
0.008
0.017
提升0.009
速度提升52.9%
time_starttransfer
0.207
0.427
提升0.220
速度提升51.5%
time_total
0.207
0.427
提升0.220
速度提升51.5%
说明本文示例与数据仅供参考。实际加速效果请以您的实际业务测试为准。
同时您可以使用网络拨测工具,在配置GA前后,分别对自有域名使用网络拨测工具测试加速效果,查看响应时间以了解数据延迟情况。
在ALB控制台一键配置GA
ALB产品集成了GA的服务,您可以在ALB控制台一键配置GA加速器,简化配置过程。
使用限制
1个ALB实例仅支持关联1个GA实例进行加速。
如下场景的ALB实例,不支持开启应用加速:
ALB实例未配置监听。
ALB实例或监听处于变配中。
ALB实例配置了QUIC监听。
ALB实例配置的HTTPS监听存在如下情况:
启用了双向认证。
使用了自定义TLS安全策略。
配置了扩展证书。
ALB实例配置的监听中,关联了后端协议为gRPC协议的后端服务器组。
ALB实例所处地域不在GA的开服地域中。GA开服地域详情参见加速区域与地域。
GA实例的终端节点出公网IP地址段,在公网ALB实例监听的ACL黑名单内,或与ACL内的白名单地址段冲突。如何获取全球加速实例终端节点出公网IP?
步骤一:为ALB实例开启应用加速
登录应用型负载均衡ALB控制台。
在顶部菜单栏,选择实例所属的地域。
在实例页面,找到目标实例,单击实例ID。
在集成服务页签,单击创建GA加速器。
开通全球加速服务:如果账号未使用过全球加速服务,需要阅读全球加速服务协议并勾选选择开通服务。
选择加速区域:加速区域是您需要进行访问加速的区域。您可以选择客户端所在地域或就近地域作为加速地域。加速区域是阿里云地域的集合,每个加速区域包含一个或多个阿里云的地域。
说明如果加速区域包含中国内地,或者后端服务器部署在中国内地地域,需要对自有域名进行ICP备案。
如果加速区域与源站地域涉及跨境访问,需要阅读跨境合规承诺并勾选同意。跨境默认开启精品带宽跨境加速。
配置完成后单击确定。
重要首次开启时会将ALB的所有监听信息同步至GA。但是后续ALB的监听变更信息不会自动同步,需要到GA控制台手动修改维护。
步骤二:配置CNAME解析
您需要配置DNS解析,将自有域名的DNS解析到GA的CNAME上,使业务流量切换至GA,以实现访问加速。
ALB实例开启GA加速后,集成服务页面将显示创建的GA实例信息,包括DNS名称(即GA的CNAME)。
如果您已有指向ALB的CNAME记录,您可以先指定美国地区来添加指向GA的CNAME记录,以进行测试。待测试成功后,再逐步扩展至其他地区或仅保留指向GA的CNAME记录。
在域名解析页面,找到目标自有域名,在操作列单击解析设置。
说明对于非阿里云注册域名,需先添加域名到云解析控制台,才可以进行域名解析设置。
在解析设置页面,单击添加记录,配置CNAME记录,然后单击确定。
本文场景中,记录类型配置为CNAME,主机记录配置为www,解析请求来源配置为北美洲_美国,记录值配置为GA实例的CNAME,添加解析记录其他参数配置可保持默认值或根据实际情况修改。
步骤三:验证加速效果
以公网ALB实例、后端服务器部署在华东1(杭州)地域、美国加速区域的客户端访问为例进行测试。
测试加速后网络延迟情况:
浏览器访问
http://<自有域名>
可以正常访问后端服务。多次刷新浏览器,可以在ECS01与ECS02之间切换。执行
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http[s]://<自有域名>"
,查看加速后数据包延迟情况。加速后,返回信息示例如下图所示:
测试加速前网络延迟情况:
浏览器访问
http://<自有域名>
可以正常访问后端服务。多次刷新浏览器,可以在ECS01与ECS02之间切换。执行
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http[s]://<自有域名>"
,查看加速前数据包延迟情况。加速前,返回信息示例如下图所示:
加速效果对比:对比数据参数介绍:
time_connect:连接时间,从开始到建立TCP连接完成所用的时间,单位为秒。
time_starttransfer:开始传输时间。在客户端发出请求后,到后端服务器响应第一个字节所用的时间,单位为秒。
time_total:连接总时间。客户端发出请求后,到后端服务器响应会话所用的时间,单位为秒。
参数
加速后(单位:秒)
加速前(单位:秒)
加速数据参考(单位:秒)
加速数据参考(百分比)
time_connect
0.008
0.017
提升0.009
速度提升52.9%
time_starttransfer
0.207
0.427
提升0.220
速度提升51.5%
time_total
0.207
0.427
提升0.220
速度提升51.5%
说明本文示例与数据仅供参考。实际加速效果请以您的实际业务测试为准。
同时您可以使用网络拨测工具,在配置GA前后,分别对自有域名使用网络拨测工具测试加速效果,查看响应时间以了解数据延迟情况。
常见问题
创建的GA实例是什么类型的实例?
按量付费的标准型GA实例。
开启应用加速后有哪些计费影响?
开启应用加速后新增GA相关费用。包括GA实例费、CU费、流量费,详情可参考按量付费全球加速实例计费。
ALB更新了监听为什么没有加速?
ALB集成GA首次开启时会将ALB的所有监听信息同步至GA。但是后续ALB的监听变更信息不会自动同步,需要到GA控制台手动修改维护。
ALB之前配置了访问控制策略为什么加速后失效?
通过GA加速后,实际访问的加速域名为GA的DNS名称,因此ALB的访问控制策略不再生效。
如需实现类似的IP地址访问控制需求,需要在GA进行访问控制策略配置,您可参考GA访问控制。
相关文档
ALB计费概述:了解ALB计费方式及计费组成等信息。
GA计费概述:了解GA计费方式及计费组成等信息。
跨境加速配置选型:对于跨境场景,默认采用精品带宽跨境加速。如果需要追求更高的网络质量,可以使用联通跨境专线