gpt4 book ai didi

即使#threads, requests/sec 很低,asp.net 请求也会排队

转载 作者:行者123 更新时间:2023-12-02 04:04:48 25 4
gpt4 key购买 nike

我们有一个运行在具有 12 GB 内存和 16 个内核的 iis 7.5 x64 (w2k8) 上的 asp.net 4.0(集成模式)Web 应用程序,该应用程序存在排队请求峰值的问题。通常队列为零,但偶尔(可能在 10 分钟内大约 15 次)队列中的队列峰值达到约 20-100。

有时,此队列还与更高数量的请求/秒相关。但情况并非总是如此。
请求电流似乎总是在 15-30 之间。

当前逻辑和物理线程的 nbr 低至 60-100

CPU 负载平均为 6%

请求/秒约为 150-200

活跃的连接似乎正在缓慢增加。大约是7000。
建立的连接似乎在 130-140 左右失败。

由于我们在集成模式下运行 .net 4.0,我想我们应该能够同时处理多达 5000 个请求,或者至少 1000 个(http.sys 内核)

http://blogs.msdn.com/b/tmarq/archive/2007/07/21/asp-net-thread-usage-on-iis-7-0-and-6-0.aspx

即使有剩余线程并且请求/秒很低,什么可能导致.net对请求进行排队?

最佳答案

只是一个猜测:垃圾收集会暂停所有线程,因此垃圾收集之后的一段时间可能看起来像是请求高峰,因为 IIS 会在 GC 期间堆积请求。你能将峰值与垃圾收集相关联吗?如果您的应用程序是 I/O 密集型的,则可能无法将 CPU 负载推得很高,因为线程将大部分时间都处于阻塞状态。

事件连接的明显泄漏是令人不安的,如果它真的在增加的话。

关于即使#threads, requests/sec 很低,asp.net 请求也会排队,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8302041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com