将请求路由到EC2上正确的应用程序服务器版本的最佳实践

我正在按照此过程将新的应用程序版本部署到EC2。 当新版本certificate稳定后,我更新DNS条目的Alogging以将stream量路由到新服务器的IP地址。

我想这不是最好的做法,尤其是因为您不能确定所有访问者的DNS帐户何时更新了条目,以便您可以使旧版本脱机。

有没有最佳做法呢? 我是否必须使用自己的IP地址创build自己的服务器,以便在其中configuration路由(昂贵)? 或者我可以利用我的托pipe服务提供商的服务来做到这一点? 还是有一个AWS特有的解决scheme?

有很多不同的方法可以无缝地部署新版本的应用程序。

要使用您现有的方法,您只需确保在切换之前为您的DNSlogging降低了TTL。

  • 将TTL更改为5分钟
  • 等待原始TTL值的总时间
  • 进行DNS更改
  • 一旦5分钟TTL过期,应该为大多数parsing器更新更改

不完全无缝,但很常见。

好的,这是一个相当古老的问题,我现在第一次看到…

我更新DNS条目的Alogging,以将stream量路由到新服务器的IP地址。

你是正确的,由于DNScaching,这将导致你的用户仍然不知道百分比的旧版应用程序。 如果你遵循phoebus的坚实build议 ,可能会有很less的用户 – 但是,在AWS上还有更好的方法。

还是有一个AWS特有的解决scheme?

是的,我在原来的答案中提到过,你链接到了Amazon。如果你只使用一个服务的IP地址的话,亚马逊的弹性IP地址 ; 或Elastic Load Balancing(如果您使用的是一组服务器)。

弹性IP一般在几秒钟内切换,在我的经验不到10秒。