如何才能实现最便宜,但非常可靠的Web应用程序configuration?
假设至less有两台应用服务器,价格为80美元/月,再加上一台数据库服务器将支持大多数人的应用程序,而我们只想达到很好的可靠性(至less3个9)。
现在可以从任何合理的提供商( Amazon EC2 , Slicehost等)租用一个相当不错的VPS解决scheme,价格为80美元/月。 但是,这些VPS托pipe解决scheme都不是完美的,而且我每个人都经历了超过99.9%的停机时间。
我不知道如何最好地configuration这3台机器 – 最好的办法是把两个应用服务器放在不同的提供商(最好有不同的networking连接),并使用HAProxy来保持互相关注。 如果出现故障,它将更新DNS,将其从您的应用程序的IP地址池中删除。 但是如何处理数据库服务器呢? 这仍然是一个单一的失败点。
我过去曾经遇到过DNS问题,但是这可以通过一个像DNS Made Easy这样的外部专用服务提供商来处理,它非常便宜($ 15 /年)。 这也支持在必要的情况下dynamic修改DNS条目,如果您不打算在危机期间手动更新它们,这将非常方便。
备份应至less每天一次到外部源(S3或FTP站点) – 每月最less一次。 你需要一个自动化的部署和恢复脚本,以便从备份中获得超过3个9个我认为可能的备份。
由于数据库的可用性,我不太满意,但它会花费你80美元左右+磁盘空间+ DNS = 250美元/月。
一个人能做得更好吗?
便宜,最小和健壮? 你刚刚击中“好/快/便宜”的恶魔三angular形 – 挑2,你不能全部3. 🙂
实际上,如果您可以以$ 250 /月的速度执行故障转移,在地理位置上进行冗余应用程序,则performance得相当不错。
我能想到的唯一替代scheme就是您已经拥有的VPS解决scheme,或者微软Azure可能适合这个账单。
我同意你在哪里做的很好。
确保您拥有坚实的恢复stream程,以便您可以快速解决所遇到的任何故障。
“三个九”的可用性等同于一年中大约8小时的停机时间。 如果你不计算维护时间,这对主stream托pipe公司来说不是一个特别苛刻的标准。 我怀疑你在两个好评的托pipe服务上看到了更糟的情况。
请记住,就主机而言,一旦他们给你一个工作的服务器,你就回来了。 如果你有一个失败,90分钟后,他们给你另一台服务器,你的停机时间是90分钟。 如果需要三天时间才能完成工作,那么额外的三天不是他们的问题。
数据库服务器显然是一个单一的失败点..你必须确定你对这个风险的容忍度和减轻它的成本。 我不太了解如何使数据库服务器变得冗余,而对于小型系统来说真的很难 。 如果您担心,您最好的select是签约数据库本身,而不是使用VPS和pipe理自己的数据库服务器。 一个例子(来自谷歌, 不是build议 )可以在这里find; 这不是特别昂贵。
我想你在这里面临着2-3个问题:
正常运行时间定义
包括宣布维修窗口或排除在外的三个九个? 提前多久才会公布维护窗口?
硬件正常运行时间
这只会随着冗余而扩大。 你永远不知道什么时候会中断,三个九个意味着每年只有大约9个小时的停机时间。 所以,即使是4小时的合同,也只能给你一次停机时间(如果在4小时内确实是2小时的话,这个合同是固定的,但是这并不便宜)。 恕我直言,你必须有2个服务器
软件/服务正常运行时间
你打算通过ping可达性定义正常运行时间,HTTP的答案,如何? – 你可以很容易地解决这个问题,通过预先定义你认为的“up”(或者如果你认为“down”更容易 – 但这将是坏事列举)
至于便宜,我不知道是否便宜,你的意思是初始成本或运行成本。 你几乎可以在任何地方买到便宜的服务器,但是你可能需要更多的服务器来排除硬件损坏,或者用惠普,戴尔,IBM这些初始成本较高但硬件损坏的可能性要低得多的硬件,降低运行成本。 只要计算一生中哪一个会更便宜。
如果你只是想要一些url:
server4you对我来说是相当不错的EC2地理位置(欧盟和美国)也可能是非常有趣的
编辑:要说清楚,当我说2机器我的意思是冗余机器每用例 (冗余数据库,冗余networking,冗余DNS,多余的$whatever
根据您的具体stream量,需求和要求,我已经在1&1上承载了许多小型networking应用程序,没有任何麻烦。
除此之外…几乎所有stream行的托pipe服务提供商有体面的(阅读:出版)正常运行时间。
99.9%的正常运行时间意味着您在一年内接受8小时45分钟35秒的停机时间。
大多数体面的托pipe公司打这相当容易。
http://www.linode.com/index.cfm对于我的一些朋友来说非常可靠。 他们有多个位置,你可以很容易地扩展。
我build议折扣ASP.net 。 我喜欢这个事实,即你可以得到一个免费的沙盒服务器,我不记得任何我看到的停机时间。