Pré-carrega conteúdo do servidor de origem para os nós de cache. Isso permite que o primeiro acesso atinja diretamente o cache, reduzindo a carga no servidor de origem.
Descrição da operação
Método de solicitação: há suporte para solicitações POST. Os parâmetros são exibidos em um formulário.
Operações relacionadas: as operações de atualização e prefetch incluem a operação de atualização RefreshObjectCaches e a operação de prefetch PushObjectCache.
Cota diária de prefetch de URL: por padrão, cada conta pode enviar até 1.000 tarefas de prefetch de URL por dia. Se a largura de banda de pico diária da sua conta exceder 200 Mbit/s, você pode abrir um ticket para solicitar uma cota diária maior. O Alibaba Cloud avalia e configura a cota com base nos seus requisitos reais de negócios.
Você pode enviar até 100 tarefas de prefetch de URL por vez.
Regras da fila de prefetch: o tamanho máximo da fila de prefetch para cada conta é de 100.000 URLs. O CDN faz o prefetch das URLs na ordem em que são enviadas. Quando o número de URLs com prefetch pendente na fila atinge 100.000, o CDN rejeita novas tarefas de prefetch.
Número máximo de vezes que cada usuário pode chamar esta operação por segundo: 50.
Para automatizar tarefas de atualização ou prefetch, consulte Scripts para atualização e prefetch.
Antes de começar
Após um nó de prefetch ser enviado e executado com sucesso, os pontos de presença realizam imediatamente a busca na origem para carregar os recursos necessários. O envio de um grande número de nós de prefetch gera muitos nós de download simultâneos, o que causa um aumento na largura de banda e nas solicitações de busca na origem e aumenta a carga no servidor de origem.
O tempo real de execução de um nó de prefetch, do envio à conclusão, depende do tamanho do arquivo pré-carregado e geralmente leva de 5 a 30 minutos. Quanto menor o tamanho médio do arquivo, mais rápido será o prefetch.
Para usar um usuário do Resource Access Management (RAM) para realizar operações de atualização ou prefetch, obtenha primeiro a autorização necessária. Consulte Conceder permissões a um usuário do RAM para atualização e prefetch para concluir a autorização.
O cabeçalho padrão transportado em uma solicitação de prefetch é Accept-Encoding:gzip. Para transportar outros cabeçalhos em solicitações de prefetch ou implementar prefetch de múltiplas cópias, use o parâmetro de solicitação WithHeader para personalizar os cabeçalhos de prefetch.
Durante o prefetch, se o servidor de origem retornar um código de status de redirecionamento, como 307, o nó de prefetch não seguirá a URL de redirecionamento para concluir o prefetch, o que causará falha no prefetch. Se o servidor de origem retornar um código de status 301 ou 302 e o redirecionamento 302 estiver ativado no CDN, o prefetch normal não será afetado.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
cdn:PushObjectCache |
none |
*Domain
|
Nenhuma | Nenhuma |
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| ObjectPath |
string |
Sim |
A URL para prefetch. O formato é nome de domínio acelerado/arquivo para prefetch. Nota
Separe várias URLs com quebras de linha. Cada URL pode ter até 1.024 caracteres. |
http://example.com/image/1.png http://example.org/image/2.png |
| Area |
string |
Não |
A região de prefetch. Valores válidos:
Se você não definir este parâmetro, a região de prefetch padrão será a região de aceleração do CDN configurada para o seu nome de domínio. Nota
|
domestic |
| L2Preload |
boolean |
Não |
Especifica se o conteúdo deve ser pré-carregado diretamente para os nós L2. Valores válidos:
|
true |
| WithHeader |
string |
Não |
O cabeçalho padrão transportado em uma solicitação de prefetch é Accept-Encoding:gzip. Para transportar outros cabeçalhos em solicitações de prefetch ou implementar prefetch de múltiplas cópias, use este parâmetro para personalizar os cabeçalhos de prefetch. Envie o valor no formato JSON. Nota
Para excluir o cabeçalho Accept-Encoding durante o prefetch, envie o seguinte:
|
{ "Accept-Encoding": [ "gzip, deflate, br" ] } |
| QueryHashkey |
boolean |
Não |
Especifica se o modo de consulta de hashkey deve ser ativado ao executar tarefas de prefetch. Valores válidos:
|
true |
| ConsistencyHash |
boolean |
Não |
Se a região de aceleração do nome de domínio for a parte continental da China e a busca na origem baseada em hash estiver ativada, você poderá usar este parâmetro para ativar o prefetch baseado em hash. Isso implementa a convergência regional de retorno à origem e reduz a largura de banda de retorno à origem gerada pelo prefetch.
Importante Este parâmetro só entra em vigor para nomes de domínio cuja região de aceleração é a parte continental da China. |
true |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
|||
| PushTaskId |
string |
O ID da tarefa de prefetch. Vários IDs de tarefa são separados por vírgulas (,). Os IDs de tarefa retornados são mesclados com base nas seguintes regras:
|
9524xxxx |
| RequestId |
string |
O ID da solicitação. |
16A96B9A-F203-4EC5-8E43-CB92E68F4CD8 |
Exemplos
Resposta de sucesso
JSON formato
{
"PushTaskId": "9524xxxx",
"RequestId": "16A96B9A-F203-4EC5-8E43-CB92E68F4CD8"
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | SingleRequest.OverLimit | A maximum of 1000 URLs are supported for each request. | |
| 400 | QuotaExceeded.Preload | Your preload attempts have exceeded the daily limit. | The maximum number of URL prefetches on the current day is exceeded. |
| 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 | QuotaPerMinuteExceeded.Refresh | You have exceeded the prescribed preload limits per minute. | |
| 400 | InvalidObjectPath.ExceedsMaximum | The maximum number of urls is exceeded. | The number of submitted URLs exceeds the maximum limit. |
| 400 | InvalidCustomHeader | Parse preload header failed. | Custom header parsing error. |
| 429 | TooManyRequests | System load fluctuates, please try again later. | System load fluctuates, please try again later. |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.