硬件大小 - 拇指规则

时间:2009-02-11 04:00:59

标签: hardware sizing hardware-infrastructure

在许多企业系统架构中,必须根据并发性和规模来确定硬件的大小。工作量要求。大多数产品供应商将提供他们自己的硬件尺寸表,其中您只需插入指标,它将丢弃服务器数量,所需RAM等详细信息。但是,当使用开源软件组件开发系统时,这些指南并不容易获得。

我需要对系统进行硬件调整。该系统是水平可扩展的,因此可以通过添加更多节点来适应不断增长的流量。首先,系统将有两个HAProxy负载均衡器节点。负载均衡器背后是提供HTML页面和javascripts的Web服务器。有更多节点托管服务器用于RESTful Web服务。后端有一些Cassandra节点。我们对流量或并发用户有一个大致的了解。

我的硬件大小调整方法应该是什么?有没有一般指导方针?

3 个答案:

答案 0 :(得分:7)

这可能是最棘手的问题之一。我兴致勃勃地看着这个帖子,看看别人怎么想。

需要考虑产品运行的硬件平台,操作系统,应用服务器,数据库服务器等,以及产品的相对复杂性。提供静态HTML的站点将扩展到比OLTP系统更多的用户。

了解目标平台的先天功能至关重要。知道ASP.NET支持12个并发执行线程/ CPU(默认配置),您可以使用输出缓存来大大降低并发性,或者超过3,000个请求/秒需要千兆以太网到数据库服务器等,可以帮助您正确规划,知道你要拉什么杠杆等等。

供应商的硬件规模表反映了对其产品进行性能和容量测试所花费的大量精力。对于您在内部开发或非营利性开发的应用程序而言,这可能是一个艰难的卖点。

简而言之,您的目标应该是开始制作产品中更复杂区域的POC,然后开始投资持续的性能和容量规划迭代。

如果不这样做,可能会发生故障 - 无法执行,无法执行cpacity计划或业务失败 - 用户从未来过。

我希望我有更好的答案 - 我自己也面临同样的挑战。

答案 1 :(得分:1)

如果您在第一天没有必要部署到所有1,000个用户,那么我很想使用虚拟化来帮助您解决这个问题。我首先在裸机上构建服务器,并根据需要检查它们的功能。然后使用您喜欢的任何VM软件P2V转换器从物理磁盘映像转换为虚拟磁盘映像。然后,我将删除服务器的原始磁盘并安全地存储它们,在其中添加一些新磁盘,安装您选择的虚拟机管理程序,添加转换后的虚拟机,启动它,为您的VM / OS添加para工具并查看如何继续。如果你的服务器工作,那么你自己给的是可移植性。您可以从大约一百个用户开始,测量负载,推断并做出一些假设。然后添加更多用户,测试您的假设等。如果你有1000个用户,并且有足够的空间,那么你可以继续使用虚拟环境(专业人员:良好的DR选项,可移植性;缺点:你会失去一些性能)或者回到裸机构建,知道它会处理工作。如果您的电池变热,那么您可以非常轻松地将VM移动到更大/更好/更快的硬件,或者将VM复制到另一个物理VM主机和类似集群。

我知道这并没有直接回答你的问题,但我不确定是否有这样的经验法则,因为基于这么多因素,每用户负载会有很大的波动。

如果您需要一个月左右的时间直到您需要订购服务器,您可能会考虑新的基于Nehalem的Xeon - 它们真的值得等待。

答案 2 :(得分:0)

以下几点可以帮到你

  • 选择尺寸调整措施
  • 估算工作负载估算CPU
  • 在线处理的大小模型 (应用程序和数据库服务器)估计
  • RAM大小估算硬盘大小
  • 估算网络带宽大小
  • 估算批处理尺寸检查
  • 硬件和软件供应商 他们的处理