部署微软的平台是不是特别的贵

发表于 2012-03-01, 最后更新 2016-02-12

原文链接:http://www.quora.com/Is-Microsofts-platform-prohibitively-expensive-for-large-scale-web-deployment


我将提出证据来证明有关微软的东西的花费不仅仅是受权证书的费用。

首先,如果使用Windows平台,你就与大量的、高质量的开源软件分开了。许多重要的开源基础组件都缺少Windows的接口(比如varnish缓存服务器就是一个很好的例子)。

第二,你将自己投身于“沉没成本的谬论”。“我们已经付钱了,所以我们确定要用这个,而不是换到其他的,不然我们就在浪费钱。”如果你正在建立一个开源的东西,并且可以把那些与同类组件相比,工作不正常的东西全部都换掉,而完全没有心理负担,他依然会花掉你的时间,但至少那些你已经花掉的钱不会影响你的判断力。一个具体的例子:我见过很多开源公司从Apache转到Nginx,用于解析更多的静态文件。这通常只花掉几个小时的时间(Nginx有非常简单易懂的配置语法),并且可以提供重大的性能提升。

第三,建立在微软的平台上将会或多或少的限制你的才能。不要误会我的意思:有很多大牛也在Windows平台上,但是我个人的经验告诉我(准确地说是被我最喜欢的开发环境所影响),很多优秀的开发人员都是在开源平台上工作的。

证书授权的费用必须被托管,因为他自身需要花费时间和金钱。如果你不小心触碰到了什么敏感的信息,使你的流量突然呈爆炸性增长,就必须要去给新的服务器去买授权,不然就会头痛致死。

授权费用的存在同样会让完全测试一款软件变得很艰难。商业化的产品,你只能下载下来,然后注册一个试用版的帐号,或者联系销售员给你一个DEMO。你可以完全的使用一个开源的软件,只需要下载下来不用跟任何人说。

综上所述:基于开源平台的杀手锏就是如果出现问题,你可以自己搞定(或者找别的大牛来搞定)。你不需要依靠昂贵的客服或者零售商,或者几个星期都都在一级、二级甚至三级客服之间来回徘徊,而此时真正的开发者还没有得到你的消息。相反,如果一开始就是用开源平台,然后聘一个顾问(至少意味着你可以出门逛街),或者直接到IRC、邮件列表来问项目的维护人员。

微软的拥护者经常说“总体拥有成本”,然后指出软件并不会因为免费而真正的不会让你花一分钱。我猜我正在提出一个反击的观点:商业软件授权的花费远超过受权证书的花费。