PushObjectCache - 预热URL

调用PushObjectCache将源站的内容主动预热到缓存节点上。您首次访问可直接命中缓存,缓解源站压力。

接口说明

  • 请求方式:支持POST请求,参数用form表单显示。
  • 相关接口:刷新预热类接口包含RefreshObjectCaches刷新接口和PushObjectCache预热接口。
  • URL预热配额(每日):默认情况下,一个账号每日最多可以提交1000条URL预热任务,如果您账号的日带宽峰值大于200 Mbps,可通过配额管理申请提升每日配额,阿里云将根据您业务的实际需求进行评估和配置。
  • 每次最多可以提交100条URL预热任务。
  • 预热队列规则:每个账号的预热队列最大为50000条URL,CDN根据URL提交的先后顺序进行预热,当预热队列中未完成的任务达到了50000条URL时,阿里云CDN将会采取排队机制(即完成排序最前的一条URL预热后才可以继续提交下一条URL预热)完成预热。
  • 单用户调用频率:50次/秒。
  • 如果您需要自动化刷新或预热,请参见刷新预热批处理脚本

注意事项

  • 提交预热任务并成功执行后,CDN节点会立即回源站加载所需资源,因此大批量提交预热任务会生成较多的并发下载任务,导致回源带宽和请求突增,增加源站压力。
  • 预热任务从提交到预热完成,实际执行时间视预热文件大小而定,大约需要5~30分钟,文件平均大小越小,预热速度越快。
  • 使用RAM用户来执行刷新或预热操作的,需要先获得授权,请参见授予RAM用户刷新预热权限完成授权。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 访问级别 资源类型 条件关键字 关联操作
cdn:PushObjectCache WRITE
  • CDN
    acs:cdn:*:{#accountId}:domain/{#DomainName}

请求参数

名称 类型 必填 描述 示例值
ObjectPath string

预热URL,格式为加速域名/预热的文件

说明 多个URL之间用换行符(\n)或(\r\n)分隔,ObjectPath的单条长度最长为1024个字符。
example.com/image/1.png\nexample.org/image/2.png
Area string

预热区域。取值:

  • domestic仅中国内地
  • overseas全球(不包含中国内地)。

如果不传该参数,默认的预热区域为您的域名所配置的CDN加速区域。具体如下:

  • 域名的加速区域为“仅中国内地”,预热区域是仅中国内地。
  • 域名的加速区域为“全球”,预热区域是全球。
  • 域名的加速区域为“全球(不包含中国内地)”,预热区域是全球(不包含中国内地)。
domestic
L2Preload boolean

是否直接预热到L2节点。取值:

  • true:代表预热的节点层级必须包含L2节点。
  • false:代表仅预热回源层节点(false为默认值,回源层节点可能是L2节点,也可能是L3节点)。
true
WithHeader string

支持用户自定义预热Header,用JSON串格式提交。

{ "Accept-Encoding": [ "gzip" ] }

返回参数

名称 类型 描述 示例值
object
PushTaskId string

预热返回的任务ID,多个任务ID用半角逗号(,)分隔。预热返回的任务ID会按照以下两条规则对预热任务做合并:

  • 同一个域名、同一秒钟提交的预热任务(URL颗粒度)会被合并为同一个RushTaskId。
  • 同一个域名、同一秒钟提交的预热任务(URL颗粒度)如果超过500条,那么会按照每500条合并为一个RushTaskId的方式处理。
9524xxxx
RequestId string

请求ID。

16A96B9A-F203-4EC5-8E43-CB92E68F4CD8

示例

正常返回示例

JSON格式

{
  "PushTaskId": "9524xxxx",
  "RequestId": "16A96B9A-F203-4EC5-8E43-CB92E68F4CD8"
}

错误码

Http code 错误码 错误信息 描述
400 SingleRequest.OverLimit A maximum of 1000 URLs are supported for each request. -
400 QuotaExceeded.Preload Your preload attempts have exceeded the daily limit. 超出当日预热额度限制。
400 InvalidObjectPath.Malformed The specified ObjectPath is invalid. -
400 InvalidExtensiveDomain.ValueNotSupported The specified ExtensiveDomain is not supported. -
400 PreloadQueueFull The warming queue is full,please try again later. -
400 TooManyRequests Too many requests, please try again later -
400 PreloadQueueFull Preload queue is full, please try again later. -
400 QuotaPerMinuteExceeded.Refresh You have exceeded the prescribed preload limits per minute. -
400 InvalidObjectPath.ExceedsMaximum The maximum number of urls is exceeded. -
400 InvalidCustomHeader Parse preload header failed. -
400 InvalidCustomHeader Unsupported Preload headers included. -

访问错误中心查看更多错误码。

阿里云首页 CDN 相关技术圈