我们开发了一个企业应用程序,我们需要为其记录以下目标部署的最低硬件要求:
- 厚客户端
- 数据库/应用程序服务器(我们运行几个需要访问数据库的服务器端进程和一个文件服务器,通常是同一台机器)
- 网络服务器
我们提出的一些想法包括基于我们的测试环境的要求,基于每个目标组件的最高规格的要求,以及基于当前可用硬件的规格。
你如何提出你的硬件规格?
我们开发了一个企业应用程序,我们需要为其记录以下目标部署的最低硬件要求:
我们提出的一些想法包括基于我们的测试环境的要求,基于每个目标组件的最高规格的要求,以及基于当前可用硬件的规格。
你如何提出你的硬件规格?
通常,我们将针对我们环境的最低建议(即客户端上的 .NET 或数据库上的 IIS/SQL Server 的最低建议)作为模糊的基准。
一般来说,我们根据客户端大小知道应用程序的应用程序大小/预期的数据库大小。
在此之后,我们根据使用 Windows PerfMon 进行的观察添加了一些“软糖”数字。我们在正常情况下运行时观察系统的客户端内存/cpu 使用情况。对于服务器层,我们还将考虑在负载条件下运行时的内存/处理器负载。
基于所有这些,我们得出了最好的猜测。
我的测试环境中有一些机器,最低硬件和软件要求取决于这些机器。我认为这是定义此类指标的唯一“安全”方式。
在这些机器上,我每周至少运行 3 次所有类型的测试,确保在所有更改之后应用程序有足够的资源。所以如果你改变你的测试机器,你也会改变最低要求。
在一些项目中,我们与客户一起定义了最小值,并购买/建造了一些具有此最小值的测试机器以再次测试......
我们在我们的环境中为用户机器使用最低基线规范,这些机器将在合理的客户期望范围内有效地运行软件。
我通常使用我的软件运行/依赖的操作系统或其他软件的系统要求。我相信这是一个很好的起点。
一些例子:
还要了解您选择的软件框架/平台的最低要求是什么。
我们的大部分工作是通过与客户的直接合同工作,因此许多硬件规格直接来自客户以及他们当前在其环境中运行的内容(即必须能够在他们拥有的最糟糕的计算机上充分运行计划使用该应用程序)。
有时我们也可以说服他们将技术升级作为开发工作的一部分,但这种情况并不常见。