【问题标题】:Rack servers, N-tier architecture, web app机架式服务器、N 层架构、Web 应用程序
【发布时间】:2015-02-15 13:20:12
【问题描述】:
我正在构建一个小型 Web 应用程序(任何时候最多 150,000 个并发用户),但希望能够在需要时扩大/缩小规模。关于 N 层架构,如果可能的话,我已经使用 RAID PCI express 卡查看了用于“数据库”的专用机架服务器。我想知道我是否也可以将相同的机架服务器用于业务逻辑和客户端层。所以总共有 3 个机架?
【问题讨论】:
标签:
web-applications
architecture
rack
n-tier-architecture
【解决方案1】:
不同的层通常对其可扩展性有不同的限制,并且通常在不同的硬件上做得更好。
数据库层受益于非常快的磁盘和大量内存。
业务逻辑和 UI 层往往需要更多的 CPU 而对磁盘的需求更少(内存需求因应用程序/技术而异)。
话虽如此,您当然可以从所有三层的共享服务器开始,然后根据需要进行扩展。您没有给出任何架构/平台/技术的指示,因此除了上述一般准则之外,给出您需要的硬件的建议将是一个完整的镜头。
例如,如果您的 UI 层是一个简单的 HTTP 服务器,提供静态内容和 javascript...那么它绝对可以与您的业务层共享空间。
另一方面,如果您的 UI 层正在构建大量动态内容,您可能需要将其分离出来。
我会说,构建您的应用程序,使用一些好的负载测试工具(有many)对其施加一些负载,然后查看哪些资源占用了哪些资源。这将帮助您决定需要购买的硬件。