我正在尝试部署 Azure 自动化 Runbook,目的是在我对 Blob 存储进行更改时清除所有缓存。到目前为止,如果我从 azure 门户 1 文件上传,效果很好。但是,如果我尝试上传多个文件,其中一些文件会因以下错误而失败。
We can only accept 100 paths for purging concurrently. Please try again in a few minutes.
这是我在自动化 Runbook 过程中使用的代码:
param (
[Parameter (Mandatory = $false)]
[object] $WebHookData
)
## Authentication ##
# Runbook must authenticate to purge content
# Connect to Azure with RunAs account
$conn = Get-AutomationConnection -Name "AzureRunAsConnection"
# Connect to Azure Automation
$null = Add-AzAccount `
-ServicePrincipal `
-TenantId $conn.TenantId `
-ApplicationId $conn.ApplicationId `
-CertificateThumbprint $conn.CertificateThumbprint
## declarations ##
# Update parameters below
# CDN Profile name
$profileName = "<CDNProfileName>"
# CND Resource Group
$resourceGroup = "<Resource-Group>"
# CDN Endpoint Name
$endPointName = "<EndPointName>"
# Set Error Action Default
$errorDefault = $ErrorActionPreference
## Execution ##
# Convert Webhook Body to json
try {
$requestBody = $WebHookData.requestBody | ConvertFrom-json -ErrorAction 'stop'
}
catch {
$ErrorMessage = $_.Exception.message
write-error ('Error converting Webhook body to json ' + $ErrorMessage)
Break
}
# Convert requestbody to file path
try {
$ErrorActionPreference = 'stop'
$filePath = $requestBody.data.url -replace "https://<storageaccountname>.blob.core.windows.net",""
}
catch {
$ErrorMessage = $_.Exception.message
write-error ('Error converting file path ' + $ErrorMessage)
Break
}
finally {
$ErrorActionPreference = $errorDefault
}
# Run the purge command against the file
try {
Unpublish-AzCdnEndpointContent -ErrorAction 'Stop' -ProfileName $profileName -ResourceGroupName $resourceGroup `
-EndpointName $endPointName -PurgeContent '/*'
}
catch {
$ErrorMessage = $_.Exception.message
write-error ('Error purging content from CDN ' + $ErrorMessage)
Break
}
任何人都可以对此提供帮助或向我澄清清除因该错误而失败的原因(“BadRequest”)
非常感谢您的帮助
答案 0 :(得分:1)
从 the article about CDN purge enpoint 底部:
<块引用>使用 Azure CDN 处理清除请求大约需要 10 分钟 来自 Microsoft,使用来自 Verizon 的 Azure CDN 大约 2 分钟 (标准和高级),使用 Azure CDN 大约 10 秒 来自 Akamai。 Azure CDN 有 100 个并发清除请求的限制 在个人资料级别的任何给定时间。
在配置文件级别的任何给定时间都有 100 个并发清除请求的限制。