在过去的几天里,我一直在设计一个站点,并一直在水平扩展站点的不同方面进行一些研究。如果事情按计划进行,几个月后(数年)我知道我需要担心将站点扩展到扩展,因为它最终会消耗的资源将是巨大的。

因此,这让我思考,什么时候开始思考和设计可扩展性的最佳时间?如果您开始得太早,您很容易使设计变得复杂,并使其无法实际构建。您也可能会陷入细节,架构,无论如何以及什么都没有做的事情。另外,如果您确实可以正常工作,但是该网站永远不会起飞,您可能会浪费很多额外的努力。

另一方面,您可能会为自己节省大量的努力。从头开始设计它以使其变得更加容易,以使其变得更大,并且重写很少。

我知道我的工作工作,我决定在扩展方面至少做出一些选择,但是我不会完全改变思考以使其完全缩放。值得注意的是,我将数据库从常规的关系设计重新设计为类似于下面链接的Reddit网站上建议的数据库,我将尝试一下Memcache。

因此,基本问题, 什么时候开始思考或担心缩放的好时机,当这样做时,有哪些良好的设计,技巧等?

对于那些感兴趣的人,我一直在阅读的几件事:

http://www.codinghorror.com/blog/2009/06/scaling-up-vs-vs-scaling-und-hidden-costs.html

http://highscalability.com/blog/2010/5/17-7-lessons-learned-while-while-building-reddit-tot-to-to-270亿-邮编

http://developer.yahoo.com/performance/rules.html

有帮助吗?

解决方案

尽管有一个很好的选择,但明智的体系结构应该使您以后扩大规模,而无需过多的资源才能实施。应该从项目的一开始就考虑到这一点。

如今,您可以从(Rails,MVC,Spring等)中获取非常好的架构和企业设计模式,可让您在建立良好且良好的基础上开发软件,从而为扩展提供必要的机制。

其他提示

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top