IIS 7.5 仅使用 1 个 CPU 核心

IIS 7.5 仅使用 1 个 CPU 核心

我有以下配置。

四核

Windows 服务器 2008

IIS 7.5

4GB 内存 32 位

我已在此服务器上托管了 MVC 1 应用程序。但运行此应用程序时,只使用了 1 个 CPU 核心。

IIS 7.5 或 Windows Server 中是否有任何设置,以便使用/利用所有可用核心。

答案1

IIS 默认已使用所有核心。您可能会看到单个请求使用单个线程,因此使用单个核心。这是设计使然。

如果您向服务器发出第二个请求,您应该会看到它到达了新核心。如果有多个用户,您应该会看到各个核心之间的平均分布。

如果您需要对单个页面发出单个请求并使用所有核心,那么您需要专门为此进行设计。这将需要启动多个线程来处理单个请求。这对于 IIS 类型的负载来说并不常见,尽管它通常假设有数十、数百或数千个用户,而不是单个用户获得 100% 的服务器资源。

答案2

您可能想要为进程设置处理器亲和性(通过任务管理器):w3wp.exe。

您是在问如何才能在代码运行时利用多个核心?

答案3

您如何测试呢?

严重地。

  • 如果您只有一个会话/用户,则访问在一个会话 cookie 下是串行的(asp.net 序列化所有处理)。

  • 要真正看到您只使用一个核心,您需要获得超过 25% 的 CPU 使用率。根据您程序员的水平以及页面的琐碎程度,这可能需要 2 个用户同时使用,甚至可能是 2000 个用户……因为页面通常应该处理得很快。

所以,

你是如何测试的?是什么让你得出这个结论?

相关内容