像Stackoverflow这样的大型网站如何不间断地更改样式和其他文件?

时间:2013-12-05 11:45:03

标签: html css interruption downtime

昨天我注意到这个网站顶部有一个新的导航栏。它还在导航栏上添加了更多功能,这些功能肯定需要服务器端更改或至少需要更新的查询。

是的,它已将ver附加到css作为变量,以便每次访问时加载一个新副本。我想知道他们如何完成更改,即在没有停机的情况下交换文件?

也许后面还有很多其他事情发生,任何见解都会很好。感谢。

2 个答案:

答案 0 :(得分:2)

虽然我不认为这个问题属于StackOverflow,但我对改变正在运行的网站有一些经验。

我们有3个不同的服务器:开发,舞台,制作。我们在开发服务器上做了所有的开发。然后,当我们决定迁移时,我们将具有不同名称的public_html文件夹复制到当前public_html所在的同一文件夹中。然后我们将交换文件夹的名称,瞧。我们有一个自动执行此操作的脚本:从git中提取,交换名称。

我们在舞台服务器上测试了脚本,如果没有失败,我们将其应用到生产服务器。

您还可以更改apache配置以查找新文件夹。把它想象成'双缓冲',旧网站是缓冲区。将新站点加载到新缓冲区中,然后更改apache配置以便使用新文件夹,即。缓冲区被交换。

交换名称没什么大不了的,我没有遇到任何不良副作用。但我想改变apache配置是一个更好的主意。

答案 1 :(得分:0)

没有人知道他们是如何做到这一点的,但我们做了什么:

使用整个网站重复的临时服务器。在没有人知道发生了什么的情况下进行所有更改,因为该网站是由另一台服务器提供的。然后只需更改您的域配置,以便登台服务器成为新的Web服务器,反之亦然。