对于一个新的可扩展的高流量全球电子商务网站 (asp.net) 项目,哪种技术最适合(最大的可扩展性和性能,最低的价格和维护)?
amazon simpledb、microsoft sql azure、mysql + memcached 组合或您的解决方案...
对于一个新的可扩展的高流量全球电子商务网站 (asp.net) 项目,哪种技术最适合(最大的可扩展性和性能,最低的价格和维护)?
amazon simpledb、microsoft sql azure、mysql + memcached 组合或您的解决方案...
我对这类问题的一般回答是:
你有相互冲突的目标,你必须根据对你的项目最重要的事情来决定。使用 SimpleDB 或 Azure 等第三方服务将是最低的入门价格和最低的总体维护成本。但它们不会超过在物理上靠近 Web 服务器的快速硬件上运行独立数据库所获得的性能。
可扩展性是另一回事。您可以获得一个快速的数据库。您可以获得免维护的数据服务。但是可扩展性取决于您。它取决于您的代码、您的架构、您的配置、您选择的代码库、您发现和修复瓶颈的能力。没有人愿意陷入无法扩展的解决方案。在每个角落,您都可以找到人们告诉您(目前)您不需要那种可扩展性。但事实是,您列出的所有选项都会扩展。
使用在线解决方案,您将为这种可扩展性付费,从长远来看,它们会更加昂贵。但并不是每个人都是著名的博主,拥有 uber-DBA 很乐意免费帮助您完成网站项目。因此,如果您珍惜时间或支付 DBA 费用,在线解决方案可能会更便宜。
通过您自己的硬件和数据库安装,您可以通过初始现金支出获得初始可扩展性。这将带你走很长的路。您甚至可以使用 EC2 之类的东西来避免初始成本。如果您的时间超出预算,这可能是一个很好的解决方案。
性能/价格/维护问题没有一个正确答案。你必须做出有益的权衡才能得到正确的答案。