华为云用户手册

  • 费用说明 音视频转码为计费项功能,默认为按需付费,建议您购买转码套餐包,更优惠。目前 视频点播 提供了三种转码包,各转码包的使用场景如下所示: H.264标准转码包 支持抵扣“视频编码”为“H.264”,且“高清低码”为“关闭”状态的视频转码。 支持抵扣音频转码,按“5/22”折算时长后进行抵扣。 H.264高清低码转码包:只能抵扣“视频编码”为“H.264”,且“高清低码”为“开启”状态的视频转码。 H.265标准转码包:只能抵扣“视频编码”为“H.265”,且“高清低码”为“关闭”状态的视频转码。 三种转码包都不支持抵扣使用转封装模板(original_template_group)产生的费用。
  • 使用限制 音视频转码当前支持的输入格式如下所示: 支持输入的音视频文件格式:MP4、TS、MOV、FLV、MPG、MXF、WMV、ADTS、AVI、MKV、MPEG、VOB、RM、MTS等。 支持输入的视频编码格式:H.264、 H.265、 MPEG-2、MPEG-4、MJPEG、WMV1/2/3、ProRes 422等。 支持输入的音频编码格式:AAC、 AC3、EAC3、HE-AAC、MP2、MP3、PCM(s161e、s16be、s241e、s24be、dvd)、WMA等。 如果需要支持多转码模式,即同时保留不同模板的转码产物,需提交工单申请开通。
  • 场景说明 通过点播服务加速分发的音视频可能被引用到各种业务场景,如产品官网、视频网站等,也可能在不同的终端进行播放,如web端、移动端。为适用于多样化的场景,点播服务提供了转码功能,支持改变音视频的编码格式、封装格式、分辨率、码率等参数,从而适用于不同的业务场景、播放终端及网络环境。 转码功能可以帮助您处理如下问题: 适配不同播放终端:您可以将原始音视频转码为更适应于各终端播放的格式,如MP4格式适用于网站点播的场景。 适配不同网络环境:您可以根据不同的网络带宽设置转码输出的码率,以适应不同的网络播放环境。 降低分发成本:支持压缩率更高的H.265编码格式,您也可以在转码时开启高清低码功能,在分辨率不变的情况下,码率下降20%左右,从而降低音视频的分发成本。 HLS内容保护:您可以在转码时开启HLS加密,对转码的HLS格式音视频进行加密,从而防止音视频被盗用后进行二次分发。 版权保护:您可以为视频添加自己独有的logo等标识水印,以宣示该视频的版权所属。 音视频提取:支持转码提取音频文件,主要适用于一些纯音频的场景,如电台、音频APP等。 禁用音频:同时也支持输出无音频的视频文件,主要适用于需要禁用原音频的场景。
  • 场景说明 使用防盗链机制可以控制播放行为,避免非授权用户通过播放URL下载或播放点播视频,但无法阻止恶意的付费用户将视频下载到本地后进行二次分发。 为了有效防止视频泄露和盗链问题,华为云视频点播提供了对HLS视频内容进行加密的能力。加密后的视频,即使恶意用户下载也无法分发给其他人观看。HLS加密涉及到业务侧的密钥服务和Token生成服务的搭建,所以本方案主要适用于能自行搭建一套完整的鉴权及密钥管理服务的业务侧。
  • 实现原理 华为云视频点播提供的HLS加密使用的HLS规范中的通用加密方案,通过指定的AES-128加密算法来加密每一个TS,并在生成的m3u8文件中描述播放器如何解密TS文件的方法,支持所有的HLS播放器。 本方案中,点播服务集成了华为云的KMS,向HLS加密提供密钥。 加密流程 业务侧将视频上传到点播服务(VOD)后,请求HLS加密。 点播服务收到加密请求后,向KMS请求加密密钥,并将获取的密钥ID和密钥密文存储在点播服务中。 点播服务向 媒体处理 服务请求HLS加密,媒体处理服务通过转码功能将对应的视频进行加密。 转码加密后生成的m3u8文件带有“#EXT-X-KEY”标签,该标签包含了“METHOD”和“URI”属性,其中“URI”即为业务侧搭建的密钥管理服务的地址,示例如下所示。 若加密后使用的播放地址是https,则秘钥管理服务的地址也需要配置为https协议,否则无法在点播控制台预览播放。 #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:6 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-KEY:METHOD=AES-128,URI="https://domain-sample/encrypt/get-key?asset_id=6aee80009c4ca6970f508d6334194794",IV=0x80a3ff24ccd788042ca7f2237e74c59d #EXTINF:5.000000, 6aee80009c4ca6970f508d6334194794_1_1920X1080_3000_0_0.ts #EXTINF:5.000000, 6aee80009c4ca6970f508d6334194794_1_1920X1080_3000_0_1.ts #EXT-X-EN DLI ST 加密后,点播服务通过CDN将加密的HLS视频文件进行加速分发。 解密流程 终端用户登录播放器终端,业务侧会对终端用户进行身份校验,校验通过后,会为播放终端分配一个Token,并将带Token的播放地址返回给播放器端。 示例:若转码加密后的HLS视频播放地址为:https://1280.cdn-vod.huaweicloud.com/input/test.m3u8,则播放器终端获取的播放地址为:https://1280.cdn-vod.huaweicloud.com/input/test.m3u8?token={token} 播放器终端通过带Token的播放URL向CDN请求播放。由于Token是动态的,所以CDN收到请求后,会直接回源到点播服务。点播服务会将请求URL中的Token写入请求的m3u8文件的“URI”中。 点播服务返回给CDN的m3u8文件中会携带播放终端的Token值,示例如下所示。 #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:6 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-KEY:METHOD=AES-128,URI="https://domain-sample/encrypt/get-key?asset_id=6aee80009c4ca6970f508d6334194794&token={token}",IV=0x80a3ff24ccd788042ca7f2237e74c59d #EXTINF:5.000000, 6aee80009c4ca6970f508d6334194794_1_1920X1080_3000_0_0.ts #EXTINF:5.000000, 6aee80009c4ca6970f508d6334194794_1_1920X1080_3000_0_1.ts #EXT-X-ENDLIST 播放终端解析返回的m3u8文件,得到EXT-X-KEY标签中的“URI”内容,向“URI”请求密钥。 业务侧的密钥管理服务收到请求后,先验证Token的合法性,若Token合法,则通过调用点播服务的API查询密钥。 密钥管理服务可以选择将查询到的密钥缓存在本地,当下次有其它播放终端请求时,可以直接返回,无需每次都向点播服务获取。 密钥管理服务将点播服务返回的密钥返回给播放终端。播放终端通过获取的密钥解密播放m3u8文件。
  • 搭建相关服务 若需要使用HLS加密功能,并实现解密播放功能,您需要在您的业务端服务器搭建密钥管理服务和Token生成服务。 密钥管理服务,搭建的密钥管理服务需要具备如下功能,密钥管理服务示例代码请参见示例代码。 支持身份鉴定:如实现原理中描述,密钥管理服务收到密钥请求时,需要验证请求的Token是否合法。 支持向点播服务获取密钥:HLS加密的原始密钥是存储在点播服务中的,因此,密钥管理服务需要调用点播服务API,获取对应媒资的密钥。 支持缓存获取的密钥:为避免每次都从点播服务获取密钥,密钥管理服务应该具备缓存功能,将获取的密钥进行缓存。 Token生成服务:当终端用户登录您的播放终端时,您的业务侧服务应该对终端用户的合法性进行校验,生成对应的Token,将带Token的播放地址返回播放器端。Token生成示例代码请参见示例代码。 生成的Token需要包含大写字母、小写字母和数字,长度可自行限制。每一次登录分配一个唯一的Token,且具备时效性。遵循权限最小化原则,建议将该Token仅用于HLS加密视频的场景。 您可以根据实际需求,参考demo源码搭建符合业务需求的密钥管理服务和Token生成服务。
  • 视频播放 由于本方案采用的HLS标准加密,对于支持HLS协议播放的播放器都可以进行解密播放。 登录视频点播控制台,在左侧导航树中选择“音视频管理”,进入音视频管理页面。 在已经加密的视频行单击“管理”,选择“播放地址”页签。 在对应的HLS格式行单击,播放HLS视频。 图2 播放地址 打开浏览器的开发者模式,可以看到控制台在预览播放时有自动通过配置的获取密钥URL去请求密钥,并解密播放。 图3 浏览器开发者模式
  • 配置Referer防盗链 先配置Referer防盗链,限制请求来源,使点播资源得到最基本的安全保障。 当前Referer防盗链配置不支持带端口。 登录视频点播控制台。 在左侧导航栏中,选择“ 域名 管理”,进入域名管理界面。 单击域名右侧“配置 ”,在“防盗链”页签单击“Referer防盗链”。 在弹出的配置框中打开“开关”,并配置相关参数。 图2 Referer防盗链配置信息 类型:支持黑名单和白名单模式。 Referer黑名单:表示仅名单内的域名不允许访问点播资源,其它可以访问。若同时勾选了“包含空Referer”,则表示不允许HTTP Header中Referer为空的请求。 Referer白名单:表示仅名单内的域名允许访问点播资源,其它不可以访问。若同时勾选了“包含空Referer”,则表示允许HTTP Header中Referer为空的请求。 规则:名单详情,最多支持4级域名,最多支持100条,以英文“;”分隔。域名、IP地址可混合输入,支持泛域名添加。域名前不能带协议名(http://和https://)。 示例:www.example.com;*.test.com;192.168.0.0 单击“确定”,完成配置。 大约需要3-5分钟,Referer防盗链才生效。
  • 配置Key防盗链 为点播资源配置Key防盗链,通过鉴权URL的时效性来进一步加强点播资源的安全。 登录视频点播控制台。 在左侧导航栏中,选择“域名管理”,进入域名管理界面。 单击域名右侧“配置 ”,在“防盗链”页签选择“Key防盗链”。 在弹出的配置框中打开“防盗链开关”,并配置相关参数。 图3 配置Key防盗链 表1 参数说明 参数 描述说明 密钥值 即Key值,单击“生成”,可自动生成符合格式的密钥值。 误差允许时间 表示当前防盗链有效时间,默认为120分钟。 示例:若鉴权URL生成时间为1573806090(2019/11/15 16:21:30),配置的“误差允许时间”为120分钟,则鉴权URL的失效时间为2019/11/15 18:21:30。 旧key的失效时间 采用新Key时,旧Key值的失效时间,从新Key生效时开始计算,默认60分钟后失效。 示例:若新Key生效时间为2019/11/15 16:21:30,配置的“旧Key的失效时间”为60分钟,则旧鉴权URL的真正失效时间为2019/11/15 17:21:30。 算法 加密算法,支持ABCD四种算法,默认为算法D。选择的算法不同,生成的鉴权URL也是不同的,具体的生成规则可参考Key防盗链。 说明: 算法ABC暂不支持HLS和DASH播放场景,建议使用算法D。 单击“确定”,完成参数配置。 提交工单申请审核,提交的信息需要包含配置的域名,及表1中的信息。 审核通过后Key防盗链功能才会生效。若修改了Key防盗链的配置,也需重新提交工单审核。
  • 验证防盗链功能 验证Referer防盗链 在Referer防盗链中配置的referer白名单为“www.huaweicloud.com”,且不勾选“不包含空Referer”。在“http://www.example.com/test/test.html”网页中引用点播服务中的视频文件“https://1280.cdn-vod.huaweicloud.com/input/1.mp4”,访问该网页并播放视频,若播放失败则表示Referer防盗链生效。 验证Key防盗链 登录视频点播控制台,在左侧导航树中选择“音视频管理”。 在某个音视频行单击“管理”,选择“播放地址”页签,获取播放地址。 图4 播放地址 其中“地址”列为原始播放地址,单击可获取鉴权播放地址。 在播放器端分别播放原始播放地址和鉴权播放地址,若原始播放地址播放失败,鉴权播放地址播放成功,则表示Key防盗链生效。
  • 实现原理 Referer防盗链的实现原理比较简单,在点播控制台配置了白名单或黑名单后,点播服务会将这份名单分发到CDN中。当CDN接收到资源请求时,会根据这个名单来识别请求是否合法,若合法,则访问请求的资源,否则拒绝并返回403。 Key防盗链是视频点播的加速节点与点播源站联合实现的,比Referer防盗链更为安全可靠的一种防盗播方案。Key防盗链的实现过程如图1所示。 图1 Key防盗链实现原理 流程说明如下所示: 租户在点播控制台开启Key防盗链功能,并配置误差允许时间、算法等。 点播服务将配置的密钥值等下发到CDN节点中。 租户通过点播服务获取到点播媒资的鉴权URL。 观众通过租户提供的鉴权播放URL向CDN请求视频播放。 CDN根据播放URL中携带的鉴权信息校验请求的合法性,仅校验通过的请求会被允许。
  • 场景说明 为对分发的音视频进行播放权限控制,点播服务提供了防盗链功能。开启后,CDN会对所有播放请求中携带的关键信息进行校验,仅校验通过的请求会予以响应,其它非法的访问将直接返回403。防盗链方案中包含Referer防盗链和Key防盗链。 Referer防盗链是基于HTTP协议支持的Referer机制实现的,通过播放请求中携带的Referer字段识别请求来源。配置黑名单或白名单,CDN将根据名单对请求来源进行过滤,从而达到最基本的访问控制的目的。Referer防盗链具有配置便捷,无需额外开发,快速生效等优势,适用于音视频主要在web端引用的场景。 由于HTTP Header的内容可伪造,Referer防盗链只能达到最基本的保护,安全性不高。所以还可以采用Key防盗链方案,通过鉴权播放URL保障点播资源的安全。由于鉴权的Key值具有时效性,所以适用于对媒资安全要求比较高的场景。 本示例中,开启Referer防盗链,只允许白名单中的域名访问视频文件,然后通过Key防盗链生成鉴权播放地址。
  • 配置示例 配置场景1:有一个门户网站,配置了华为云 CDN加速 ,客户希望不缓存首页 需要在CDN控制台增加一条类型为“首页”,缓存过期时间为“0”的规则。 配置场景2:设置某个类型的文件或者某个页面不缓存 某客户配置了CDN加速,设置了对“.do”格式的文件缓存1天,由于业务需求,需要对“.do”格式的文件不缓存。 需要在CDN控制台增加一条文件名后缀为“.do”的缓存规则,缓存过期时间设置为“0”。 新规则仅对后续资源缓存生效,新规则配置完成后,建议您刷新“.do”文件所在的URL或者目录,新规则才可以对所有“.do”文件生效。 某客户配置了CDN加速,发现登录界面无限循环,无法登录,停用CDN加速后,可以正常登录。 这是因为CDN节点缓存了登录界面导致的,需要在控制台增加一条针对登录界面的缓存规则,缓存过期时间设置为“0”。以华为云控制台登录界面为例,华为云控制台的登录页面为“https://auth.huaweicloud.com/authui/login.html#/login”,在控制台增加一条全路径:/authui/login.html#/login,缓存过期时间为“0”的缓存规则。 配置场景3:某客户加速域名www.example.com设置了如下图的缓存规则,不知道哪一个规则生效。 用户访问www.example.com/test/cdn.jpg,虽然所有文件、文件名后缀、全路径三条规则都匹配到了,但是由于全路径的优先级为8,在三条规则里优先级最高,所以系统最终匹配全路径/test/*.jpg这条规则。
  • 根据业务类型设置缓存过期时间 CDN默认缓存过期时间: 业务类型选择的是网站加速、文件下载加速或点播加速,且源站类型为源站IP或源站域名的加速域名,会有两条默认缓存规则。 常规动态文件(如: .php .jsp .asp .aspx)默认缓存过期时间为0,对此类动态文件请求会直接回源,此默认规则允许修改和删除。 除常规动态文件外的其他“所有文件”默认缓存过期时间30天,允许修改,不允许删除。 如果您在添加域名里源站类型选择的是“OBS桶”,会有一条默认缓存规则。 默认有“所有文件”默认缓存过期时间30天,允许修改,不允许删除。 所有文件默认缓存30天,此规则允许修改但不允许删除。您可以将自定义缓存规则设置为更高优先级(数值更大),该自定义规则将会被优先匹配。 业务类型为全站加速时,默认有“所有文件”、缓存过期时间为“0”的缓存规则,允许修改和删除。 您可以根据业务类型配置缓存过期时间: 网站加速类型,建议设置缓存过期时间: 对php、aspx、asp、 jsp、 do、 dwr、cgi、 fcgi、action、ashx、axd、json等动态文件不缓存。 对以shtml、html、htm、js结尾的文件,建议缓存7天。 其他静态文件建议缓存30天。 下载加速类型,建议设置缓存过期时间: 对php、aspx、asp、jsp、do等动态文件不缓存。 对7z、apk、 wdf、 cab、 dhp、exe、flv、gz、ipa、iso、mpk、MPQ、pbcv、pxl、qnp、r00、rar、xy、xy2、zip、CAB等文件缓存30天。 视频点播加速 类型,建议设置缓存过期时间: 对php、aspx、asp、jsp、do等动态文件不缓存。 对mwv、html、htm、shtml、hml、gif、swf、png、bmp、js等缓存7天。 对MP3、wma、7z、apk、 wdf、 cab、 dhp、exe、flv、gz、ipa、iso、mpk、MPQ、pbcv、pxl、qnp、r00、rar、xy、xy2、zip、CAB等文件缓存30天。
  • 源站对CDN节点缓存的影响 源站设置了缓存过期时间 源站设置了no-cache、private、no-store,CDN侧同时开启了“缓存遵循源站”功能:CDN节点不缓存源站资源,用户每次访问都需要回源,无法达到加速的目的。 CDN默认关闭“缓存遵循源站”功能。 设置了其它缓存过期时间:CDN控制台默认或者新设置的缓存过期时间会覆盖源站的缓存过期时间。 源站未设置缓存过期时间 遵循CDN控制台默认或者新设置的缓存过期时间。
  • 注意事项 智能压缩默认对格式为 .js、.html、.css、.xml、.json、.shtml、.htm的文件进行压缩。 如果源站配置了MD5值校验,请勿开启此功能。CDN对静态文件压缩时,会改变MD5值,导致压缩后的文件的和源站文件的MD5值不一致。 部分浏览器暂不支持Brotli压缩,您可以前往这里查询。 后台有特殊配置的域名无法开启智能压缩。 同时开启Gzip、Brotli压缩方式时,优先执行Brotli压缩。 常见的图片文件类型(PNG、JPG、JPEG等)和视频文件类型(MP4、AVI、WMV等)已经做了内容的压缩处理,开启Gzip压缩或Brotli压缩没有效果,此类文件无需开启智能压缩。
  • 配置示例 配置详情:域名www.example.com开启了IP访问限频,访问阈值设置为10000次/秒。 触发IP限频的条件:单IP的单URL每秒访问单节点的次数达到10000次,才会触发访问限频。 示例:IP地址为0.0.0.0的客户端,一秒内访问链接https://www.example.com/abc.jpg的次数达到了10000次,即触发访问限频,该IP再次请求https://www.example.com/abc.jpg时,阻断请求,返回403状态码,10分钟后解除阻断。
  • 配置示例 加速域名为www.example.com,该加速域名配置了referer白名单规则:包含空referer,白名单内容为www.test.com,如下图所示。 用户1:请求URL:https://www.example.com/file.html,该请求携带的referer字段值为空,CDN将会正常返回内容。 用户2:请求URL:https://www.example.com/file.html,该请求携带的referer字段值为:www.test.com,CDN将会正常返回内容。 用户3:请求URL:https://www.example.com/file.html,该请求携带的referer字段值为:www.abc.com,CDN节点将会返回403禁止访问的错误信息。 加速域名为www.example01.com,该加速域名配置了referer黑名单规则:包含空referer,黑名单内容为www.test01.com,如下图所示。 用户1:请求URL:https://www.example01.com/file.html,该请求携带的referer字段值为空,CDN节点将会返回403禁止访问的错误信息。 用户2:请求URL:https://www.example01.com/file.html,该请求携带的referer字段值为:www.test01.com,CDN节点将会返回403禁止访问的错误信息。 用户3:请求URL:https://www.example01.com/file.html,该请求携带的referer字段值为:www.bcd.com,CDN将会正常返回内容。
  • 日志说明 日志文件延迟时间:日志时延一般不超过24小时,偶尔会出现时延超过24小时的情况,建议您24小时后下载日志。 由于日志系统同步有时延,域名接入CDN后第一个小时可能无法生成用户访问日志,如果您需要查看该时间段的日志,请提交工单申请。 日志命名规则:周期开始时刻-加速域名-拓展字段.gz,如“2018021123-www.example01.com-xx.gz”。 日志生成规则:每个加速域名的日志默认按小时分割,每天 24 个日志文件。因文件打包有大小限制,如果一个周期内产生的日志文件超过打包限制,该时段的日志会分割成多个文件,此时每个日志文件的名称会通过扩展字段区分。 日志内容示例: [05/Feb/2018:07:54:52 +0800] x.x.x.x 1 "-" "HTTP/1.1" "GET" "www.test.com" "/test/1234.apk" 206 720 HIT "Mozilla/5.0 (Linux; U; Android 6.0; zh-cn; EVA-AL10 Build/HUAWEIEVA-AL10) AppleWebKit/533.1 (KHTML,like Gecko) Mobile Safari/533.1" "bytes=-256" x.x.x.x 各字段从左到右含义如表1所示。 表1 CDN日志字段说明 序号 字段含义 字段示例 1 日志生成时间 [05/Feb/2018:07:54:52 +0800] 2 访问IP地址(客户端IP) x.x.x.x 3 响应时间(单位ms) 1 4 Referer信息 - 5 HTTP协议标识 HTTP/1.1 6 HTTP请求方式 GET 7 CDN加速域名 www.test.com 8 请求路径(不含URL参数) /test/1234.apk 9 HTTP状态码 206 10 返回字节数大小 720 11 缓存命中状态 HIT 12 User-Agent信息,其作用是让服务器能够识别客户使用的操作系统及版本、CPU类型、浏览器及版本信息等。 Mozilla/5.0 (Linux; U; Android 6.0; zh-cn; EVA-AL10 Build/HUAWEIEVA-AL10) AppleWebKit/533.1 (KHTML,like Gecko) Mobile Safari/533.1 13 Range信息,其作用是在HTTP请求头中指定返回数据的范围,即第一个字节的位置和最后一个字节的位置。 bytes参数值表示方法一般分为如下三类: bytes=x-y:表示请求第x个字节到第y个字节的数据内容。 bytes=-y:表示请求最后y个字节的数据内容。 bytes=x-:表示请求第x字节到最后一个字节的数据内容。 bytes=-256 14 服务端IP:CDN服务端响应IP。 x.x.x.x
  • 背景信息 远程鉴权功能类似URL鉴权,区别如下: URL鉴权:鉴权由CDN节点完成。 远程鉴权:CDN节点转发用户请求到您指定的鉴权服务器,由鉴权服务器完成鉴权功能。 远程鉴权用户请求流程如下: 图1 远程鉴权流程 表1 步骤说明 步骤 说明 ① 用户携带鉴权参数访问CDN节点。 ② CDN将用户请求转发至远程鉴权服务器。 ③ 远程鉴权服务器完成鉴权操作,给CDN节点返回响应状态码。 ④ CDN节点根据接收到的状态码判断是否给用户返回所请求的资源。
  • 配置示例 域名example.com开启了远程鉴权,配置请见图3。 客户端原始请求URL:https://example.com/folder01/test.txt?key=***,原始请求中携带Header:test=123。 CDN转发给远程鉴权服务器的URL为:GET https://192.168.9.1/remoteauth?key=***,CDN转发给远程鉴权服务器的请求包含header:test=123。 可能的鉴权结果: 结果1:鉴权成功,CDN节点与用户开始正常的缓存数据访问交互。 结果2:鉴权失败,CDN节点返回403状态码给用户。 结果3:鉴权超时,CDN节点执行鉴权超时动作,放行用户请求。 图3 远程鉴权
  • 配置约束 如果您的账号是 IAM 子账号,那么您的子账号需要有以下权限才可正常开启OBS委托授权: IAM权限: iam:agencies:listAgencies iam:agencies:createAgency iam:permissions:grantRoleToAgencyOnProject CDN权限: cdn:configuration:modifyChargeMode CDN ReadOnlyAccess
  • 提高缓存命中率、优化加速效果 使用场景 配置项 说明 缓存命中率低、加速效果不明显 配置缓存规则 合理配置不同资源的缓存过期时间和优先级,能有效提升缓存命中率,降低回源率,减轻源站压力。 注意事项: 注意设置缓存优先级,优先级取值为1~100之间的整数,数值越大优先级越高。 如果您修改或新增了缓存规则,请刷新对应资源的缓存。 请将动态资源的缓存过期时间设置为“0”,即不缓存,否则将导致访问异常。 检查源站资源cache-control配置,如果设置为不缓存(no-cache、private、no-store),同时在CDN侧开启了“缓存遵循源站”功能,则CDN节点无法缓存,用户每次访问这个资源都需要回源,无法达到加速的目的。 Range回源 如果您的资源内容较大,希望CDN回源时只返回指定范围的内容,以便缩短大文件的分发时间,提升回源效率,减少回源消耗,您需要设置Range回源。 文件下载加速默认开启Range回源。 确认源站是否支持Range。 智能压缩 如果您想要压缩您网站的静态资源,缩小传输文件的大小,提升传输效率,减少带宽消耗,您需要开启智能压缩。 智能压缩包含Gzip压缩和Brotli压缩,Brotli压缩的性能比Gzip压缩提升约15%~25%。 开启智能压缩功能时,CDN会自动压缩静态文件(.js、.html、.css、.xml、.json、.shtml、.htm)。 URL参数 如果您需要CDN节点在缓存资源忽略或保留“?”之后参数,提高缓存命中率,提升分发效率,您需要开启URL参数。 URL参数变化,资源不变,可以配置忽略参数。 URL参数变化,资源变化,不可配置忽略参数。
  • 本地测试加速域名(可选) 添加加速域名后,为保证顺利切换不影响业务,建议先做测试再切换DNS解析。 ping添加域名生成的CNAME,得到ping的IP地址。 示例:添加的加速域名为www.example.com,生成的CNAME地址为www.example.com.c.cdnhwc1.com,ping www.example.com.c.cdnhwc1.com得到IP地址为10.0.0.0。 在本地电脑绑定hosts文件测试。 示例:如果您使用windows系统,在C:\Windows\System32\drivers\etc\hosts文件中添加加速域名www.example.com和IP地址10.0.0.0的绑定关系。如图1所示。 图1 测试加速域名 在本地访问加速域名测试业务,如果测试符合预期,说明配置正确。 测试成功后,在DNS域名提供商修改解析记录,配置CDN提供的CNAME。详情请参见配置CNAME。
  • 文件校验 本文以加速域名test.example.com为例,为您介绍通过“文件校验”验证域名归属权的流程。 当您在CDN添加域名时,如果遇到下图所示的情况时需要验证域名归属权。 图1 验证域名归属权 单击“验证方法”,选择“方法二:文件校验”,验证完成前请不要关闭验证页面。 单击“verification.html”,下载文件。 上传文件至域名服务器根目录。 单击“验证”,进行域名归属权验证。 华为云CDN后台将会访问您的源站http://example.com/verification.html获取验证文件,如果系统验证获取到的文件正确,则通过校验,请确保验证文件可被访问。
  • 目的 主要用于指导伙伴、开发者在华为云API中心生产和开放API。通过统一的API治理框架和规范,帮助伙伴、开发者构建并提供有质量保障的 API服务 ,为平台营造良好能力开放与交互的环境,支撑华为云和伙伴及开发者共建API生态。 API治理规范主要从安全、可用性、易用性、可维护性,生命周期管理六个维度针对API生产(API设计/开发/测试)和API开放提供规则建议。 安全:对API的安全认证、涉及敏感信息或个人隐私数据使用和处理提出规范要求或建议,保障API的安全合规。 可用性:对API调用成功率、响应时长、并发及流量控制、吞吐量等提出规范要求或建议,保障API的高可用性。 易用性:对API参考文档描述、入参和出参、消息头定义等提出规范要求或建议,提升API调用者使用体验。 可维护性:对于API兼容性、日志实时性和完整性、版本管理等提出规范要求或建议,提升API可维护性。 生命周期管理:对API变更和下线等提出规范要求或建议,保障已订阅API租户的业务连续性。 包含Must类型的基本规则以及Should类型的扩展规则。Must规则牵引API开发者提供符合企业级标准、安全合规的API,Should规则在提供更全面指导的基础上,给予开发者灵活的弹性空间,方便开发者更快的加入API生态圈。
  • 新增错误注入 在配置服务治理项页面,选择“错误注入”页签,单击“新增”。 在新增错误注入页面,配置相关参数,参数说明如表8所示。 表8 新增错误注入参数说明 参数 说明 微服务(服务端) 需要测试容错能力的微服务,可以具体到微服务的方法。 是否使用别名 选择是否使用别名。 Schema(服务端) - 微服务方法(服务端) - 类型 测试微服务的容错能力类型: 延时 错误 协议 访问微服务出现延时或错误的协议: Rest Highway 触发概率 访问微服务出现延时或错误的概率。 延迟时间 访问微服务出现延时的时长,“类型”选择为“延迟”时才需要配置。 http错误码 访问微服务出现错误的HTTP错误码,“类型”选择为“错误”时才需要配置。该错误码为HTTP标准的错误码。 单击“确定”保存配置。
  • 新增OLC流控 在配置服务治理项页面,选择“OLC流控”页签,单击“新增”。 在新增OLC流控页面,选择配置不区分微服务接口的全局参数流控、针对微服务/接口的资源流控和节点级动态流控规则。 表10 新增全局资源 参数 说明 资源类型 选择全局资源。 参数名 填写参数名称。 字符长度0~50,可以由字母、数字、下划线、短横线、点组成,不能包含特殊字符。例:Limit_rule-001。 限制流控类型 QPS:每秒速率流控。 配额:特定时间的请求阈值。 阈值 流控阈值,正整数类型或0。 允许的突增量 当限流控制类型为QPS时,显示该参数。 允许的QPS突增值,作为突增增量累加到阈值上。 禁用时间 当限流控制类型为QPS时,显示该参数。 被流控后禁用时间。 时间窗口 填写时间,单位为秒,表示间隔多少秒允许一个请求通过。默认为1秒,取值范围为1~86400。 是否集群限流 选择“是”或“否”。开启后对集群内此资源的调用总量进行限制。 集群限流阈值模式 当流控类别为QPS,开启集群限流时,显示该参数。 单机均摊 总体阈值 本地配额缓存数 当流控类别为配额,开启集群限流时,显示该参数。 防止D CS 热点key的参数,可以减少DCS的访问,默认值为5。 该参数需要合理配置,配置过小容易造成热点key问题,配置过大可能导致部分节点放通部分节点流控的问题。 开启流控规则 选择是否开启流控规则。 表11 新增接口资源 参数 说明 资源类型 选择接口资源。 是否使用别名 选择是否使用别名。 原始服务名 使用别名时,需要填写原始服务名。 Schema All * 微服务方法 - 限流控制类型 QPS:每秒速率流控。 配额:特定时间的请求阈值。 阈值 流控阈值,正整数类型或0。 允许的突增量 当限流控制类型为QPS时,显示该参数。 允许的QPS突增值,作为突增增量累加到阈值上。 禁用时间 当限流控制类型为QPS时,显示该参数。 被流控后禁用时间。 时间窗口 填写时间,单位为秒,表示间隔多少秒允许一个请求通过。默认为1秒,取值范围为1~86400。 是否集群限流 选择“是”或“否”。开启后对集群内此资源的调用总量进行限制。 集群限流阈值模式 当流控类别为QPS,开启集群限流时,显示该参数。 单机均摊 总体阈值 本地配额缓存数 当限流控制类型为配额,开启集群限流时,显示该参数。 防止DCS热点key的参数,可以减少DCS的访问,默认值为5。 该参数需要合理配置,配置过小容易造成热点key问题,配置过大可能导致部分节点放通部分节点流控的问题。 开启流控规则 选择是否开启流控规则。 新增参数 单击“新增参数”,可以根据需要新增流控规则。 表12 新增节点级动态流控 参数 说明 资源类型 选择节点级动态流控。 开启流控规则 选择是否开启流控规则。 CPU过载阈值 CPU利用率超过该值时,接口的放通比例开始降低,直到降低至最低放通比例;CPU利用率越高,接口放通比例下降越快。该阈值要求为小数,范围为0~1,支持精度为小数点后四位。 CPU恢复阈值 CPU利用率小于该值时,接口的放通比例开始恢复,直到恢复至100%;CPU利用率越低,接口放通比例恢复越快。该阈值要求为小数,范围为0~1,支持精度为小数点后四位,并且小于CPU过载阈值。 最低放通比例 配置各个接口等级对应的最低放通比例,在CPU始终处于过载状态时,仍然能放通该比例的请求。 范围为0~1,支持精度为小数点后四位。 单击“确定”保存配置。
  • 治理策略说明 支持负载均衡、限流、故障隔离、容错、降级、熔断、错误注入、超时时间和OLC流控等策略的配置。各治理项说明如表1所示。 表1 治理策略说明 名称 说明 负载均衡 微服务一般会部署多个实例,负载均衡控制微服务消费者访问微服务提供者的多个实例的策略,以达到流量均衡的目的。策略包括轮询、随机、响应时间权值、会话粘滞等。 限流 用于控制访问微服务的请求量大小,避免由于流量冲击对系统造成破坏。 故障隔离 - 降级 用于控制微服务调用其他微服务的时候,强制返回缺省值或者抛出异常,而不将请求发送到目标微服务,以达到屏蔽对目标微服务的访问和降低其压力的目的。 容错 当微服务消费者访问提供者出现异常,比如实例网络不通等,需要将请求转发到其他可用的实例。这里的容错,常被称为重试。 熔断 当微服务消费者访问提供者出现异常,比如实例网络不通、请求超时等,并且异常积累到一定的程度,需要停止访问提供者,返回一个异常或者缺省值,防止雪崩效应。 熔断提供了自动熔断策略。自动熔断需要结合错误率等判断是否熔断。 错误注入 错误注入可以模拟一个调用失败,主要用于功能验证、故障场景演示等场景。 超时时间 - OLC流控 CPU过载控制OLC(Overload Control)是一种CPU过载调控机制。当CPU过载时,OLC能够对受监控协议报文和任务进行调控,通过不同优先级业务的合理规划和限制报文通过等方式,降低对CPU资源的消耗,并确保设备不会因为某种受监控协议或任务冲击CPU导致的CPU过载而影响对其他业务的正常处理
  • 新增限流策略 在配置服务治理项页面,选择“限流”页签,单击“新增”。 在新增限流页面,配置相关参数,参数说明如表3所示。 表3 新增限流参数说明 参数 说明 流控类型 服务端 客户端 微服务(客户端) 选择ALL。 是否使用别名 选择是否使用别名。 Schema(服务端) - 微服务方法(服务端) - QPS 每秒的请求数。当限流对象对当前服务实例的每秒请求数量超过设定的值,当前服务实例不再接受该对象的请求。取值范围为1-99999的整数。 单击“确定”保存配置。
共100000条