在过去的几天里,我一直在设计一个网站,并对水平扩展网站的不同方面进行了一些研究。如果事情按计划进行,几个月后(几年?)我知道我需要担心扩大和扩大网站,因为它最终会消耗大量资源。
所以,这让我开始思考,什么时候开始考虑和设计可扩展性的最佳时机?如果您开始得太早,您很容易使您的设计过于复杂,并使其无法实际构建。你也可能过于关注细节、架构等等,最终什么也没做。此外,如果您确实让它正常工作,但该网站从未起飞,那么您可能已经浪费了大量额外的努力。
另一方面,你可以为自己节省大量的精力。从头开始将它设计得很大,这样以后让它变大变得容易得多,几乎不需要重写。
我知道我正在做的事情,我决定现在至少在扩展方面做出一些选择,但我不会完全改变思维来让它完全扩展。值得注意的是,我已经将我的数据库从传统的关系设计重新设计为类似于下面链接的 Reddit 站点上建议的数据库,我将尝试使用 memcache。
所以,基本的问题是,什么时候开始考虑或担心缩放的好时机,以及这样做时有哪些好的设计、技巧等?
我一直在阅读一些东西,对于那些感兴趣的人:
http://www.codinghorror.com/blog/2009/06/scaling-up-vs-scaling-out-hidden-costs.html