关于cdn:CDN-资源刷新

6次阅读

共计 1360 个字符,预计需要花费 4 分钟才能阅读完成。

CDN 次要用于减速动态资源,动静资源会回源站实时获取不进行缓存。能够依据文件类型和更新频率设置资源的缓存过期工夫,最长能够设置 3 年。

CDN 提供资源的刷新和预热性能。通过刷新性能,您能够强制 CDN 节点回源并获取最新文件;通过预热性能您能够在业务顶峰前预热热门资源,进步资源拜访效率。

刷新性能是指提交 URL 刷新或目录刷新申请后,CDN 节点的缓存内容将会被强制过期,当您向 CDN 节点申请资源时,CDN 会间接回源站获取对应的资源返回给您,并将其缓存。刷新性能会升高缓存命中率。

调用接口刷新节点上的文件内容。被刷新的文件缓存将立刻生效,新的申请将回源获取最新的文件,反对 URL 批量刷新。

命令行刷新脚本

<?php

include __DIR__ . '/vendor/autoload.php';

use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;

// Download:https://github.com/aliyun/openapi-sdk-php
// Usage:https://github.com/aliyun/openapi-sdk-php

if (count($argv) != 2) {
    echo "参数谬误";
    exit;
}

$accessKeyId = '<accessKeyId>';
$accessSecret = '<accessSecret>';
$project = $argv[1];
$path = "https://www.yourdomain.com/{$project}/";

AlibabaCloud::accessKeyClient($accessKeyId, $accessSecret)
    ->regionId('cn-qingdao')
    ->asDefaultClient();

try {$result = AlibabaCloud::cdn()
        ->v20180510()
        ->refreshObjectCaches()
        ->withObjectType("Directory")
        ->withObjectPath($path)
        ->withSecurityToken($accessKeyId)
        ->debug(true) // Enable the debug will output detailed information
        ->request();
    print_r($result->toArray());
} catch (ClientException $e) {print_r($e->getErrorMessage());
} catch (ServerException $e) {echo $exception->getMessage() . PHP_EOL;
    echo $exception->getErrorCode() . PHP_EOL;
    echo $exception->getRequestId() . PHP_EOL;
    echo $exception->getErrorMessage() . PHP_EOL;}

参考:

配置缓存过期工夫

配置刷新和预热

调用 API 刷新节点上的文件内容

正文完
 0