IIS高使用率和服务器性能问题

有一个SBS2011运行Exchange,数据库应用程序和其他一些服务5个用户(3低使用,1高)。

服务器从来没有被指定为数据库应用程序,所以它不像我想要的那么强大…只有12GB内存。

我们越来越多地发现这台服务器的性能问题,上周它是如此糟糕,我甚至无法远程连接。

释放一些可用的RAM(在过去一个月左右):

  • (到目前为止)将Exchange消息存储限制为1GB没有不良影响。

  • 受限SQL数据库(包括SBSMonitoring和Sharepoint / ## SSEE(未使用) )。

现在我发现IIS工作线程正在使用可用的内存,并且我(至今)一直无法追踪有关限制它们的许多有用的信息。

IIS工作线程

除了OWA之外,这个服务器不能“服务”任何基于Web的东西,因为Outlook非常慢(又与服务器性能有关)。

我知道, SBS2011上的Exchange旨在用尽可用资源 (并在其他应用程序请求时予以承认)。 但是,我们的需求并没有这么做(或者接近足够快)。

打开数据库应用程序(使用Postgres)需要从客户端机器5分钟以上,并定期超时或崩溃。

重启后(在SQL / Exchange / IIS数据库非常大/完全caching之前),我们获得了我们所需要的性能。 以前每月重启一次就足够了……然后每周一次……现在他们几乎每天都要重启它!

我挖了一遍,发现有用的信息,使我能够限制这些w3wp.exe进程(IIS工作)。

  • 我从这里使用的信息来找出哪些最大的IIS工作者。 你也可以使用 “进程pipe理器”来做到这一点。

  • 我无法find确切的页面/网站我find的信息,但您可以限制IIS数据库的大小,使其消耗一定量的内存后“回收”。 这些 页面包含相同的信息,但他们不是我读的。

你可以这样做:

  1. 以pipe理员身份运行IIS Manager
  2. 展开服务器,展开并单击Application Pools
  3. 在右边的“ Edit Application Pool ”下点击“回收” 在这里输入图像说明
  4. 将“ Memory Based Maximums ”更改为您希望使用的内存占用(在我的情况下为100mb) 在这里输入图像说明
  5. 点击Next后,查看警报级别等

注意:因为我进一步限制了WSUS并且没有使用Sharepoint,所以我将它们设置为回收率很低。