当我查看许多数据库支持的企业解决方案的硬件要求时,我发现应用程序服务器(操作系统,处理器,RAM,磁盘空间等),数据库服务器(版本,RAM等)的要求和要求客户。
Here is an example of Oracle Fusion Middleware.
我无法找到有关网络速度或架构(交换机速度,SAN IOPS,RIOPS等)的要求。我不希望我的应用程序出现糟糕的用户体验,但是由客户端环境中的网络延迟引起。
在向客户发送所需的硬件要求规格时,您如何记录这些方面的要求?网络性能的相关衡量标准是什么? (或者它只是要求IOPS = x )
答案 0 :(得分:1)
通常,要求的细节层次不止一个。例如,您通常会将细节级别区分为0(粗略任务语句)到4(技术细节)。
因此,如果您指定SAN应至少以x的带宽容量运行,那么这个数量就会很高。确保打破你的主要想法(系统应该响应,以防止客户变得不耐烦并离开竞争对手......)进入更可衡量的目标(如上所述)。
Stephen Withall在他的“软件需求模式”一书中写下了很好的例子。参见第9章,第191页,它并不昂贵。 他将其分解为建议,我引用了响应时间,吞吐量,动态容量,静态容量和可用性。当然,这是软件!因为基本上,你可能最好开始定义整个系统在特定情况下断言的内容:我们什么时候开始衡量? (例如,当客户端请求进入网络网关时);我们认为平均网络延迟超出了我们的影响范围?我们测量了多少不同的客户,以及这些客户接触多少个不同的自治系统?究竟他们执行了什么样的任务,以及特别苛刻的资源类型?我们什么时候停下来测量?我们是否真的对涉及的所有硬件进行了完整的系统测试?我们将在运行时提供哪种网络监控?等
这比你只是为一个单位分配一个值,比如传输率/ IOPS甚至可能无法解决你的问题,这应该对你有所帮助。如果您发现网络硬件的性能低于您的预期,则交换相当容易。特别是如果您将托管服务提供给外部合作伙伴。但是,该软件不易交换。
确保区分您必须满足的要求或约束,以及您提供的技术解决方案的实际内容。可能有更多的解决方案。速度是一项要求(虽然模糊不清)。硬件架构是一种解决方案。