Exchange 2019 CPU on MSExchangeServicesAppPool

Jonathan Berg 6 Reputation points
2023-01-04T15:11:02.757+00:00

Hi,

We have been on Exchange 2019 for over a year now. In the last month, we have noticed some high CPU usage increase happening. We are running it in VMWare ESXi 7 on Windows Server 2019. We were initially running it with 4 cores. We've now bumped it up to 8. NUMA is active on ESXi hosts. Memory is good and it rarely goes above 60%.

What i've discovered is that one of the culprits is the w3wp.exe process (iis). In Task Manager, when I add the Command Line column, I can see where w3wp.exe has this:

C:\windows\system32\inetsrv\w3wp.exe -ap "MSExchangeServicesAppPool" -v "v4.0" -c "C:\Program Files\Microsoft\Exchange Server\V15\bin\GenericAppPoolConfigWithGCServerEnabledFalse.config" -a \.\pipe\iisipmb(some guid) -h ""C:\inetpub\temp\apppools\MSExchangeServicesAppPool\MSExchangeServicesAppPool.config"" -w """" -m 0

I can't read the inetpub\temp\apppool\ config file. I can look at the GenericAppPoolConfigWithGCServerEnabledFalse.config as well as the MSExchangeServicesAppPool_CLRConfig.config.

I noticed there are other w3wp app pools that also look to the GenericAppPoolConfigWithGCServerEnabledFalse.config file. All this file has is GCServerEnabled = false which it appears to have something to do with Garbage Collection. The MSExchangeServicesAppPool_CLRConfig.config DOES have GCServerEnabled set to TRUE.

So i'm not sure exactly what's going on here and if there is actual Garbage Collecting happening or not. 1 config file says it does, the other does not. I know this may not answer the performance question, but I wanted to find out if anyone else has had to investigate this and seen anything similar in their Exchange environment? And are there any recommended tweaks to any of these files that should be done?

Internet Information Services
Exchange Server Management
Exchange Server Management
Exchange Server: A family of Microsoft client/server messaging and collaboration software.Management: The act or process of organizing, handling, directing or controlling something.
7,348 questions
{count} vote

3 answers

Sort by: Most helpful
  1. Jame Xu-MSFT 4,166 Reputation points
    2023-01-05T02:41:07.337+00:00

    Hi @Jonathan Berg ,
    What version of IIS are you using? If it's IIS 7.x, you could troubleshoot for high CPU by following the instructions in this document: Troubleshooting High CPU in an IIS 7.x Application Pool


    If an Answer is helpful, please click "Accept Answer" and upvote it.

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    0 comments No comments

  2. Jonathan Berg 6 Reputation points
    2023-01-05T14:07:45.25+00:00

    I believe it's IIS 10.x. The one that's available on Windows Server 2019.


  3. Jame Xu-MSFT 4,166 Reputation points
    2023-01-09T08:49:08.127+00:00

    Hi @Jonathan Berg ,
    You could still use the Debug Diagnostics Tool to troubleshoot high CPU usage by a process in IIS

    1. Download and then install the Debug Diagnostics Tool v1.2
    2. Configure Performance Monitor logging
    3. Disable Debug Exception Catching
    4. Create a dump file
    5. Disable Performance Monitor logging
    6. Analyze the dump file

    If an Answer is helpful, please click "Accept Answer" and upvote it.

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    0 comments No comments