我们的网站托管在专用的 Windows 服务器上。每次服务器重启时,我们都会损失大约 5-6 分钟的流量。我们使用的是 .Net 架构 (MVC)。
单独的专用服务器会很昂贵。无缝流量的最佳架构是什么?
大多数解决方案都指向单服务器设置或重定向到维护页面。无缝浏览不是各种线程中讨论的选项。
答案1
不将其托管在专用服务器上。如果你在一台机器上有东西,而这台机器不可用,那么这个东西就不可用,这是无法回避的事实。这是基本的常识逻辑。
现在,根据您的网站功能,有简单的方法。静态内容?通过 CDN 运行访问并让 CDN 定期刷新。
动态内容(小动态,比如新闻杂志)?同样 - 只是可以指示 CDN 在服务器可用时从服务器提供服务,在不可用时使用上次提供的版本。
完全动态(像商店一样)?意识到你想要的无关紧要 - 我们又回到了“一个项目不可用意味着服务不可用”。前两个解决方案基于相同的原理,但您可以将多台冗余机器外包给 CDN - 这对于活动预订服务不起作用。
在许多情况下都不会讨论无缝浏览,因为物理和因果关系仍然存在——如果你运行单点故障,那是你决定的,而宇宙无法神奇地解决这个问题。
因此,请购买更多机器。或者开始将您的内容转移到云服务。您可能会发现云突然变得不那么昂贵,这取决于您对服务器的看法。我并不是在挑剔——我只是发现,如今即使是中低端服务器对于简单的网站来说也非常强大,特别是如果您将静态内容卸载到 CDN 时。除了极少数例外,如今运行物理服务器的唯一原因是运行虚拟机。请注意,我认为“中端”是双插槽系统——而不是运行台式机 CPU 的自制系统。是的,这是一个问题——出于安全原因,我想要一台单独的机器来控制我的备份,我很难找到功率足够低的东西,任何价格更高的东西都是低效的。但事情就是这样。因此,您可能会发现云服务比 3 台服务器效率高得多——是的,您需要 3 台,因为有时会出现问题。