AWS CloudFront 使用缓存失效机制来检测源是否更新,并在必要时从源获取最新内容。缓存失效机制包括两种方式:时间失效和事件失效。
时间失效是指在缓存对象上指定一个过期时间。当该时间到达时,缓存中的对象被视为失效,并从源获取最新内容。
事件失效可以根据源的特定事件触发,例如如果源的内容被更新,则 CloudFront 自动从源获取最新内容。
以下是一个示例的事件失效代码:
{
"Records": [
{
"cf": {
"config": {
"distributionId": "E12345EXAMPLE"
},
"response": {
"status": "200",
"statusDescription": "OK",
"headers": {
"content-type": [
{
"key": "Content-Type",
"value": "text/html"
}
],
"etag": [
{
"key": "ETag",
"value": "27334734"
}
]
}
}
}
}
]
}
这个示例代码可以监听 CloudFront 的事件(例如分发 ID 为 E12345EXAMPLE 的分发内容)。CloudFront 将在该分发内容的源更新时触发此事件,然后将从源获取最新内容以更新缓存。