我的目标是在部署过程中实现零停机。我的站点使用akamai作为CDN。假设我有IIS服务器的主群集和辅助群集。在部署期间,将对辅助群集进行更新。主备切换前,是否可以请求akamai缓存内容,并在指定时间进行切换?
发布于 2010-11-20 12:20:38
你将会遇到的问题是保证你的内容被缓存在所有的akamai服务器上。您希望强制内容在切换后立即刷新的问题吗?
这里有几个选项。
1-使用?v=1请求中的版本。此版本将始终从原始请求,并将附加到每个请求。一旦你更新了你的站点,在源上更新版本,这样下一个请求就会追加"?v=2“,从而”破坏“缓存,并强制所有请求的源命中
2-将您的akamai配置更改为“尊重TTLs服务器TTLs”。然后,您可以在切换之前设置非常低或几乎为0的TTL,然后在切换后逐渐增加TTL
3-将akamai配置为使用If-MOdified-Since。这将强制akamai在任何请求发生更改时进行“验证”。
4-使用ECCU,它可以清除整个目录,但这可能需要40分钟,但在维护窗口期间应该是可管理的。
发布于 2010-11-15 16:01:22
基于我与Akamai的经验,我认为这是不可能的(但事情的变化速度比我跟得上)-你可以手动刷新内容(要付出一定的代价),这样你就可以刷新我们在部署期间为特定文件做的/* (从不/*,因为我们有超过120万的URL),但我看不出Akamai如何缓存您网站的不可见版本,以便在没有一些辅助域名和来源的情况下即时切换。
然而,我也发现Akamai很好处理,如果有解决方案,与他们联系是绝对值得的。
https://stackoverflow.com/questions/4182401
复制相似问题