我开始在一个三层体系的网站(UI:MVC / Application:REST / DB)上工作,我一直认为三层比二层(高stream量网站的禁忌)更具可扩展性,但是最近我知道一些众所周知的网站是2层网站不是3,似乎运行相当不错。
那么交易是什么,如何决定两个人是否会比三人更好地服务于你。 我打算build立的网站是一个公共的,但相对较小,我期待高stream量。
有任何想法吗?
这需要相当多的应用程序分析。 当弄清楚一个给定的系统如何能够扩展时,有几个问题需要自己去帮助确定扩展的痛点:
这些问题将帮助您找出哪些单点可能会让您失望,并确定需要过度资源扩展的层级。 有些事情很难模拟,比如一年的数据库增长以及数据库性能如何影响。 其他的将很容易,比如应用服务器性能。
这有助于2层或3层分析,因为它会告诉您是否需要分离前两层,并帮助您找出需要离散的第一层的路程。 如果看起来像是在一年内增加了两个数量级,会导致第一层出现问题,那么将您的1/2层devise成稍后拆分,然后根据需要进行拆分。