【发布时间】:2018-01-07 23:26:58
【问题描述】:
我有一个站点,我通过 ajax 使用 Web API,该站点作为不同站点托管在同一个 IIS 上,并且两个应用程序池都不同。我的 Web API 在 MVC4 中,我使用 SQL 服务器进行数据访问,一些 Web API 需要 0 秒,而一些需要 2 秒到 8 秒。我的网站集中在 azure 服务器上。
我的问题是当 100 个或更多用户使用我的网站时,我的 IIS Web API 网站会挂起并且不再响应任何请求。为此,我查看了工作进程,列出了一些请求并且服务器没有响应任何请求。当时 CPU 利用率为 50%,内存为 19%。
我能否为此问题为 Web API 站点分配 4 个工作进程,但如果我将多个工作进程分配给一个站点,我不知道它是如何工作的。
如果您有任何想法,请与我分享我如何处理上述情况?
【问题讨论】:
-
如果不花时间浏览您的网站,任何人都无法告诉您正在发生的事情。没有关于 100 个用户导致此问题的原因 - 它必须是您的代码中的某些内容。您可以在不同的环境中复制相同的问题吗?当超过 100 个用户时,您是否有任何日志记录来确定发生了什么?
-
我花了很多时间但找不到。你能告诉我,我怎么能找到哪个查询或 API 挂起我的网站?还是存在死锁问题....如果我为该站点进行网络园艺,该站点将处理工作进程是否挂起?
标签: asp.net azure asp.net-mvc-4 iis application-pool