我有一个网站,每次上传它以各种帧大小渲染的图像。 Cron作业每10分钟运行每10分钟,看起来是在此期间上传的任何新图像,如果是这样,它会生成所有所需的帧。

由于此Cron每10分钟运行每10分钟,内容(例如文章)之间存在一段时间,并且图像可用的时间。因此,在此期间,示出了具有站点徽标的通用占位符图像。

由于Akamai缓存了图像,当站点用户加载具有由Cron呈现的图像的页面时,静态占位符将显示该图像路径,Akamai将缓存它。即使图像稍后渲染,也是可用的用户仍将从Akamai获取缓存版本。

一个解决方案是当Cron呈现时破坏这些图像的“年龄”。但它需要Akamai约8分钟来回来。

是否有任何其他解决方案,我可以通过缓存到期标题来告诉Akamai每10秒回到每10秒,直到收到新的图像,一旦完成,就不会再次回来并继续显示缓存版本?

有帮助吗?

解决方案

是的,在某种程度上。如果您将几步从服务器端和Akamai设置中组合起来。

这是概念:边缘服务器提供它具有的内容。如果使用缓存控制标题,例如,从PHP中,Akamai配置设置中的TTL设置相应数字属性的配置设置将它们吹走,而是使用那些。意思是你告诉它通过路径,文件类型,扩展名或其他方式来到您的原始服务器的频率。然后从客户端,无论它将其提供给最终用户的文件,除非您没有在该级别缓存,否则对内容所申请的频率并不重要,除非您没有缓存,返回给您。

使用这些配置设置,您可以指定特定文件具有精确的到期 - 或者根本不缓存它。

所以如果在服务器端,如果在您的页面上指定placeUlleter.jpg并告诉akamai根本不缓存该图像,则每次边缘服务器获取它的请求时它都会返回。一旦您在适当的图像中,ParkultEler.jpg就不存在于您的页面上的任何内容,而是有Sizea.jpg,它会遵循常规图像缓存时间。

这可能不是完全理想的,但它是最好的,而不是手动清除页面,据我所知,他们没有API调用来清除您可以触发的页面(加上它需要7-10分钟的缓存 - 无论如何都会通过其N / W传播)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top