我有 4 台运行 IIS 6 的 Windows 2003 服务器。这些服务器托管了许多独特的网站(它们的构建/架构/等等都不同)。这些网站背后的代码范围从纯 HTML、经典 ASP 到 .NET 的 1.1/2.0/3.x 版本。一些(大多数)网站使用 SQL 后端,它托管在一台或两台不同的服务器上 - 而不是 IIS 服务器本身。这些服务器上没有虚拟化,也没有为这些特定网站提供负载平衡。
我遇到的问题是提出一些基线指标来确定,或者基本上提出一个“基线分数”来了解网络服务器何时达到其托管限制。
今天,会用到每台服务器的一些基本信息:服务器输出多少带宽、硬盘空间可用性以及基本(非常基本的)RAM 和 CPU 利用率(高峰时段的情况)。
如果你们这些比我聪明 1000 倍的人能向我介绍一下管理 IIS 环境的方法,我将不胜感激。无论是性能监控细节,还是我试图确定的“分数”确定,还是两者的结合。
提前致谢。
答案1
这有很多主题信息:http://technet.microsoft.com/en-us/library/bb727100.aspx
似乎由于 IIS 使用进程的方式,很难分辨哪个“站点”实际上正在使用资源(因为它们与进程匹配,而不是进程内的线程),除非您将日志条目与性能日志进行匹配。这可能会有点令人讨厌。
我想这取决于您的进程池设置。您可能能够使用“Sysinternals 的进程资源管理器”来确定哪个站点正在使用哪个进程,或者进程等,它可以轻松提供各个进程使用情况的图表,而且是免费的。(我喜欢能够暂停进程内的线程。真是太方便了!)
http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
答案2
互联网信息服务:
- 中央处理器
- 记忆
- 网络(虽然这实际上不应该是一个问题)
- IO(不应该是个问题)。
SQL:
- 中央处理器
- 记忆
- IO。确实,“每个请求的秒数”计数器至关重要。
其余的都由你决定。但这些将是我要考虑的基准。
完全使用(CPU)没问题 - 持续时间较短(最多 15 秒)。请注意,这是“在所有核心上”。