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