空间和VPS的差异最主要在支持的压力和配置的自由度上。通常而言,空间支持的压力比VPS要小,配置也更加不灵活,当然,也可以叫更加简单。两者都可以通过加钱来升级到更加性能优异的程度,因此很难说什么情况下该用什么。简单的做法是,如果空间能满足你的要求,就不要折腾VPS。通常折腾VPS的都起码是专业公司了,通常都有自己的网管。一般公司的误区是,希望自己拥有对机器的完整权限,因此更倾向于托管机器。然而托管机器的成本并不像你所想像的那样低廉。

首先,同样的硬件,在你手里的利用率一定比在VPS商手里的利用率低。这是理所当然的,VPS商就是通过组合不同的性能组合,精细调整压力,来赚钱的公司。在VPS商手里,基本每字节内存,每个CPU时间片都是充分利用的。而一旦你买进托管主机,用的掉不用掉这都是你的事情了。当然,与此对应的,当高压力到来的时候,VPS比自己托管机器的响应更快。基本只要信用卡刷下去,性能就立刻上去了。

同样,这个特性也比较适合那些资源的峰谷比特别夸张的公司,尤其是一些几个月内会受到超大压力,过后肯定会被放弃的项目。VPS方案可以允许你短期内租用一些机器来工作,过后没有扫尾工作。

其次,由小公司运作的设备,其平均无故障时间远低于专业VPS商,也低于主机托管商。道理也很简单,硬件的物理损坏会降低平均无故障时间。而虚拟主机和VPS都是通过无单点故障的均衡系统来解决这个问题的,这个方案对于只有几台设备的小公司不适用。更进一步说,如果万一出问题,非专业人员的恢复时间无论如何比专家来的慢。

最后,最主要的是,如果使用空间或者VPS,你无需关心硬件淘汰问题。通常网络公司很少碰到多年后使用寿命满导致的机器淘汰,通常都是性能不足而进行的机器替换。汰换下来的机器用起来不方便,卖掉不合算,是个很鸡肋的东西。VPS商会自行处理这些事情,并且在机房升级后,通常还会给用户一些自动升级。

我们现在来算一个实际问题,一个比较典型的小网站,平均同时在线人数大约是400人,峰谷比大约是1:5。页面滞留时间按照20s计算,每页面流量10K,每session内存消耗0.5M。为了支持峰值在线,大约需要1G内存,瞬时带宽消耗大概是1M/s,一个月的数据流量大约是600G。一台中等的1U小型服务器大概是2W,分摊到3年折旧,每个月就是600。1U的托管最低是6000(我怀疑现在哪里还能弄到这个价格),最高的有10W的。按照1.2W计算,一个月是1000。加上少量的中间费用,直接管理硬件的成本大约是1800-2000RMB/mo。dreamhost的不限空间不限带宽服务一个月费用是9美元,折合60RMB/mo不到。gplhost上的Xen服务器,60G硬盘1.2G内存360G带宽是70美元,折合450RMB/mo。其他厂家也有200-350RMB/mo不等的类似服务方案,不过有可能是基于OpenVZ的,有超卖的可能。

为了支持这个小网站,如果使用小型服务器托管方案,那就是一台服务器搞定,1800-2000RMB/mo。如果是Xen服务器,大约是900RMB/mo。如果是空间,性能顶得住就是60RMB/mo,顶不住就当场崩溃。

基本结论是,如果你的程序并不特别重要,那么用空间。如果应用的峰值内存消耗小于2G,那么用VPS。如果峰值内存消耗奇高,或者月流量超大,还是自己托管服务器稍微省点钱。