假设我们有3台物理服务器,假设我们只对性能感兴趣,而不是可靠性。 为每个服务器提供一个特定的function还是让所有的服务器都重复,并将它们之间的stream量分开?
换句话说,将1作为数据库服务器,1作为Web服务器,1作为报告服务器/数据仓库,或者更好地把所有三个服务放在每台服务器上,并将它们用作networking农场?
这真的取决于应用程序的性质和stream量的性质 – 一般问题没有一个正确的一般答案。
一些成功解决这个问题的方法:
最后,请记住负载急剧地改变了事情 – 在获得stream量之前,处理大量stream量的一些事情实际上会对性能产生负面影响。 ASP.NET本身就是一个很好的例子 – 你可能花了很多时间等待工作进程在开发模式下运行。 但是在预编译的生产中却是黯然失色。
在什么地方演出? 大量的并发网站用户或后端数据仓库和报告?
Web性能:两个负载均衡并连接到一个数据库服务器的Web服务器。 希望数据仓库杂务和报告可以在非高峰时段完成。
报告/数据挖掘:一个networking,一个数据库,一个数据仓库服务器。