5

我正在处理一个客户提案,他们需要升级他们的网络基础设施以支持托管 ASP.NET 应用程序。本质上,我需要估计具有已知用户数量(当前为 250)的系统的峰值使用情况。像“你需要一条专用的 T1 线路”这样的简单答案可能就足够了,但我希望有数据来支持它。

另一个问题引用了 NetLimiter,它看起来很漂亮,可以了解正在使用的内容。

我的一般想法是,我将启动 Web 应用程序并使用系统,就像我预期的那样在客户处使用它,真正以悠闲的速度,在一定的时间跨度内,然后将带宽使用量乘以用户并按时间划分。

这似乎不太科学。对于提案来说可能已经足够了,但我想看看是否有更好的方法。

我知道有可用于测试 Web 应用程序性能的负载工具,但似乎这些工具不能准确地模拟峰值用户负载以进行带宽测试(一次太多)。

该平台是 Windows/ASP.NET,应用程序托管在 SharePoint (MOSS 2007) 中。

4

2 回答 2

3

这里还有几个问题需要问。

是 250 个总用户,还是 250 个并发用户?如果并发,那是 250 个峰值,还是通常是 250 个?如果总共有 250 个用户,他们是否都希望同时使用它(例如,一个 Intranet 站点,人们必须在其中使用它作为他们工作的一部分),或者它更像是一个社区站点,他们可能会或可能不会用它?我假设您的措辞方式是总共有 250 名用户,但这仍然不足以说明该网站以进行估计。

如果它是一个社区或“普通”互联网站点,它还取决于使用情况——例如,人们是否真的会大量使用它,还是某些用户只需登录一次,然后就忘记了?从您的角度来看,这可能是一个棘手的问题,因为您会想假设前者,但是如果您在网络基础设施上花费大量资金并且最终没有人使用它,那么这可能是一件非常糟糕的事情。

网站在做什么?在频谱的低端,有一个“典型”的 Web 应用程序,您可以在其中拥有合理大小(例如 1-2k)的页面和少量图像。更激烈的是一个拥有大量媒体的网站——例如,flickr 风格的图像浏览。上端是一个有大量下载的网站——流媒体电影,或者只是下载大文件或数据集。

这有点超出您的问题的门槛,但要关注的另一件事是该网站的未来:明年或一个月的使用量可能会翻倍吗?在没有某种方式升级的情况下,请小心锁定与 T1 或光纤连接之类的长期合同。

另一个问题是可靠性——您需要连接冗余吗?前期成本可能很高,但有多种方法可以进行多宿主连接,您可以在其中平衡几个链接之间的访问,然后在发生故障时只使用一个(尽管容量减少)。

另一个要考虑的选项,它可以有效地让您完全避免整个问题,就是将应用程序托管在数据中心中。您支付相对较低的月费(与专用高质量连接的成本相比较低),并且您可以获得所需的带宽(例如,大多数托管计划会给您每月 500GB 的传输量,首先- 有些只会给你无限的)。数据中心也将比您可以构建的任何东西(缺少您自己的 6+ 数字数据中心)更可靠,因为它们具有冗余互联网、电源备份、冗余冷却、防火、物理安全......并且他们有管理所有的人这是给你的,所以你永远不必处理它。

于 2008-12-30T15:30:32.150 回答
3

代替一个好的带宽使用报告工具,您总是可以做一个粗略的猜测。

N = 最繁忙时间的页面浏览次数 P = 平均页面大小

(N * P) /3600) = 每秒平均流量。

服务器本身可能会为数据库服务器/NAS/等提供更多的内部流量。但是面向外应该会给你一个非常粗略的使用概念。显然,您将需要远远超过上述值,因为您永远不想被 100% 使用,并允许其他流量。

我也不建议使用像 250 个用户这样的任意数字。使用最繁重的生产日/小时作为参考。如果您愿意,可以加倍和三倍,但是如果您有良好的日志文件/用户审核,这将为您提供预期的用户行为分布。这将有助于使您的猜测更加准确。

As another commenter pointed out, a data center is a good idea, when redundancy and bandwidth availability become are a concern. Your needs may vary, but do not dismiss the suggestion lightly.

于 2008-12-30T16:05:09.633 回答