我们有一个位于单个网络服务器上的网站,我们需要升级 .net 和 MVC,因此需要重新启动。处理 5 分钟左右的停机时间的最佳方法是什么?
我想我们可以将域上的 TTL 减少到 1 秒。更改 DNS 以指向另一个显示“维护中”类型页面的服务器。然后重新启动,然后将 DNS 指向它。
这是一般的首选方法吗?我们没有任何负载平衡来将其切换到其他地方或任何地方。
首先正如@David Jashi 所说,do it at night.
但更具体地说,是在非高峰时间进行。
您是否会进行任何回滚以防万一它没有恢复?
您可以使用第二台服务器作为副本,然后在非实时服务器上进行升级,对其进行测试,然后交换 DNS 记录,这将不会提供任何停机时间。
这听起来很对。您应该在您的域的非高峰时间进行此操作,以防万一您在切换时遇到意外问题。重新启动服务器时也要为意外做好准备。这是我们唯一一次在软件中看到启动问题(显然),并且一些硬件问题也只在启动过程中出现。可能不会发生,但最好安全然后抱歉。
我更喜欢换到另一台服务器,即使它只是一个较旧、较慢的型号。通常它设置在主服务器旁边,路由器上的转发改为它。这样,该站点始终保持运行状态。