我是处理生产服务部署基础设施的新手。我的直觉告诉我,如果我想让我的服务尽可能地“启动”,但只能负担 2 台专用服务器(启动时间!),我应该让一台服务器成为另一台服务器的冗余副本。然后设置故障转移、复制等。
然而,在阅读了一些案例研究,甚至听说 Stack Overflow 和 OK Cupid 只有一个数据库服务器之后,也许我想多了?
我有点讨厌不得不每月花费 250 美元。在充当备份的租用服务器上以防万一。
这一切都取决于您提供的服务,但是来吧,堆栈溢出必须足够重要,以至于它应该需要一个冗余数据库。
好了,闲话不多说。我错过了什么?帮助!谢谢。
尝试找出您的服务器出现故障的可能性。还要弄清楚您需要多长时间才能获得替换和恢复备份。那就是你要倒下的时间。服务器的价格标签和设置冗余的时间是您为减少这种可能性而付出的代价。对您的公司和服务器来说,这个价格是否值得,还是把钱花在其他地方会更好?
请记住,如果两台服务器都在同一个地方、相同的电源、网络设备等......它们仍然可能同时出现故障。数据库本身的问题可以复制,并且仍然可以关闭。那么,您愿意为设备级冗余支付多少费用?
在许多情况下,许多较新的公司正在使用更便宜的服务器集群,而不是仅仅使用一两个“大”服务器来降低成本。如果您的应用程序支持集群,它还可以为您提供一种简单的方法,即通过启动更多服务器实例来将容量增加一倍或三倍。许多人正是以这种方式使用亚马逊,因为当你需要一个实例时很容易启动另一个实例(如果你的卷是高度动态的,当然在不需要时关闭一个实例)并且如果你有 2 个并行运行的“廉价实例”在任何时候,一个失败只会影响你,直到你可以开始另一个。
SO 有多个数据库服务器。据我所知,他们有一个备用奴隶。
http://blog.stackoverflow.com/2010/02/thermal-event-at-datacenter/
如果 OK Cupid 没有至少一台冗余数据库服务器,我会感到非常惊讶。