作者:admin发布时间:2024-11-15 01:18分类:CDN加速浏览:44评论:0
呵呵,兄弟你真有魄力。
这种用个图片加速就可以了。。。你说的更新存在延时,,应该考虑去解决同名更新问题而不是撤掉cdn,
还是那句话,你真有魄力!
没有具体的时间。
什么是CDN刷新与预热?
1.(1)什么是刷新
淘汰cdn节点上的旧文件,重新获取文件的新版本。
(2)什么是预热
首次发布的文件,主动从源站推送到CDN,让用户访问到CDN时不用回客户的源站命中。
2.为什么要刷新?
(1)CDN节点缓存的资源没有过期,但是基于客户的业务要求,需要更新CDN节点上缓存资源。遇到这种场景我们应该怎么办?刷新功能就登场了,刷新就是强制删除CDN节点缓存内容。用户请求这些资源时,CDN节点需要重新回源拉取资源,保证响应的资源与源站一致。
(2)常见的场景:比如A公司游戏包发布后,发现有bug需要修复,为了降低影响,需要把CDN节点上缓存的旧游戏安装包都删除。
(3)刷新类型分为目录刷新和URL刷新。URL刷新是直接将节点上缓存的资源删除。对于目录刷新,会将节点上的文件资源过期,会同源站对比Last-Modified时间,比如节点上的目录文件的Last-Modified为:Mon, 26 Dec 2018 11:11:00 GMT ,源站文件的Last-Modified为Mon, 28 Dec 2018 11:11:00 GMT.则此时源站会告诉节点:你的文件比我的文件老,我已经更新文件了,快来取最新的资源吧,此时会将源站新的资源更新到节点上,否则,源站返回304,告诉节点,你节点上的资源已经和我源站上的资源是一致,为最新的了,无需更新。
突然朋友问了我个这样的问题:明明设置了30天缓存时间,为啥还没到30天就回源了?
相信很多朋友也有这种问题,首先回忆一下CDN的请求流程:
首次请求因为未命中缓存所以要到源站服务器获取资源,等CDN服务器将资源缓存在本地后,后续客户端再来请求就由CDN服务器直接给客户端了,不用再去源站。
既然都设置了30天的缓存时间,那理所应当是30天之后才会再次到源站服务器获取资源。
其实这种说法不完全正确,30天是理想最大的过期时间,不出现意外的情况下,资源在CDN服务器上是可以缓存30天的。
但是意外总是有的,比如CDN服务器坏了,里面的数据都丢了。后面CDN服务器搞好重新上线时,里面什么缓存都没有的,那你再次请求到CDN服务器是不是就会回源?
还有以下情况。
除了以上的原因还有其他的,不一一举例了。
那怎么才能避免出现上面的问题?
CDN服务器坏掉的问题,这个没啥好的办法;其他三个问题,主要解决办法是提升网站的请求量,但也不能彻底解决只能起到缓解而已。
网站每天必须有一定的请求量和流量,让资源保持热度,不然资源就有可能被淘汰掉。
取消回复欢迎 你 发表评论