2

我的目标是在部署期间实现零停机。我的网站使用 akamai 作为 CDN。假设我确实有 IIS 服务器的主集群和辅助集群。在部署期间,将对辅助集群进行更新。在从主切换到辅助之前,我可以请求 akamai 缓存内容并在指定时间进行切换吗?

4

2 回答 2

5

您将遇到的问题是确保您的内容缓存在所有 akamai 服务器上。您想在切换后立即强制刷新内容的问题吗?

这里有几个选项。

1 - 在请求“?v=1”中使用一个版本。此版本将始终从源请求,并将附加到每个请求。更新站点后,立即更新源版本,以便下一个请求将附加“?v = 2”,从而“破坏”缓存并强制对所有请求进行源命中

2 - 将您的 akamai 配置更改为“尊重网络服务器 TTLs”。然后,您可以在切换前设置非常低或几乎为 0 的 TTL,然后在切换后逐渐增加

3 - 将 akamai 配置为使用 If-MOdified-Since。如果任何请求发生更改,这将强制 akamai “验证”。

4 - 使用可以清除整个目录的 ECCU,但这可能需要 40 分钟,但在维护窗口期间应该可以管理。

于 2010-11-20T04:20:38.070 回答
0

根据我在 Akamai 方面的经验,我认为这是不可能的(但事情变化的速度比我跟上的快) - 您可以手动刷新内容(需要付费),这样您就可以刷新 /* 我们曾经这样做对于部署期间的特定文件(从不 /*,因为我们有超过 120 万个 URL),但我看不出 Akamai 如何缓存您网站的不可见版本,以便在没有一些辅助域和来源的情况下进行即时切换。

但是,我还发现 Akamai 非常好处理,绝对值得与他们联系以寻求解决方案。

于 2010-11-15T08:01:21.590 回答