有一个运行 Exchange、数据库应用程序和一些其他应用程序的 SBS2011,为 5 个用户(3 个使用率低,1 个使用率高)提供服务。
该服务器从未针对数据库应用程序进行过指定,因此它不像我想要的那样强大...只有 12GB RAM。
我们越来越多地发现该服务器的性能问题,上周它非常糟糕,我甚至无法远程连接。
释放一些可用的 RAM(过去一个月左右):
限制Exchange 消息存储到 1GB,(到目前为止)没有任何不良影响。
受限 SQL 数据库(包括国土安全监测和Sharepoint/##SSEE(未使用))。
现在我发现 IIS 工作线程正在耗尽可用内存,并且我(到目前为止)无法找到有关限制它们的很多有用信息。
除了我发现人们使用的 OWA 之外,该服务器不提供任何基于 Web 的服务,因为 Outlook 太慢了(再次与服务器性能有关)。
我知道SBS2011 上的 Exchange 旨在耗尽可用资源(并在其他应用程序请求时做出让步)。但是它并没有这样做(或者说速度远远不够快)来满足我们的需求。
打开数据库应用程序(使用 Postgres)从客户端机器需要 5 分钟以上的时间,并且因此经常超时或崩溃。
重新启动后(在 SQL/Exchange/IIS 数据库非常大/完全缓存之前),我们获得了所需和期望的性能。以前每月重新启动一次就足够了...然后每周重新启动一次...现在他们几乎每天都要重新启动!
答案1
我仔细搜索并找到了一些有用的信息,这些信息使我能够限制这些 w3wp.exe 进程(IIS 工作进程)。
您可以通过以下方式进行操作:
IIS Manager
以管理员身份运行- 展开服务器,展开并单击
Application Pools
- 在右侧点击“
Edit Application Pool
”下的“回收” - 将“
Memory Based Maximums
”更改为您希望使用的内存占用量(在我的情况下为 100mb) - 点击后查看警报级别等
Next
注意:正如我所料进一步限制 WSUS并且我没有使用 Sharepoint,我将它们的回收率设置为相当低。