none
Noderunner.exe ParserServer.exe CPU占用率高 RRS feed

  • 问题

  • 环境是:exchange 2013 CU9

    近期发现后端服务器 Noderunner.exe ParserServer.exe CPU占用率高。

    暂时不考虑升级CU打补丁的方案,想从其他方面优化下。

    查了下资料。

    First thing is to cap the memory that noderunner.exe uses, to do that edit the {Drive-Letter}:\Program Files\Microsoft\Exchange Server\V15\Bin\Search\Ceres\Runtime\1.0\noderunner.exe.config.

    Locate the ‘memoryLimitMegabytes=”0″‘ value.

    Change it from ZERO, (use everything) to 250 and save the file.

    应该是限制内存

    1. Launch registry editor
    2. Go to path HKLM\SOFTWARE\Microsoft\ExchangeServer\V15\Search\SystemParameters
    3. Create a DWORD by name CtsProcessorAffinityPercentage
    4. Configure the value to 15 (decimal)
    5. Restart Exchange Search Host Controller service and Microsoft Exchange Search service on the server.

    CtsProcessorAffinityPercentage 这个参数 15又是代表什么?

    以上2个地方的修改,能否解决我们的问题呢?

    2台后端服务器DAG,用户数规划4K~5K人,调整多少合适呢?

    谢谢。

    2019年1月18日 4:14

答案

  • 你好,

    如我们所知,Noderunner.exe 和 ParserServer.exe这个两个进程都是用于内容索引,而CtsProcessorAffinityPercentage 这个参数 的值设为15,代表限制索引所消耗的CPU资源为15%。

    一般来说,通过限制内存和CPU可以暂时缓解这些进程高度占用资源的问题,但是在修改这些限制之前,建议你检查一下当前数据库索引的状态,通常,不健康的索引状态才会导致这些进程异常占用资源,运行下面的指令检查ContentIndexState是否都是Healthy:

    (Get-DatabaseAvailabilityGroup) | ForEach {$_.Servers | ForEach {Get-MailboxDatabaseCopyStatus -Server $_}}

    如果有不健康的索引,可以参考这篇博客来重建索引,然后再次检查是否有同样的问题。

    关于服务器资源的规划,微软有发布一款计算器专门用于服务器的部署规划,具体可以参考:Exchange Server Role Requirements Calculator v9.1

    最后,由于Exchange 2013 CU9已经落后最新的CU21很多,建议你还是尽快更新到最新的CU。 

    谢谢!



    Best Regards,
    Niko Cheng


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.


    Click here to learn more. Visit the dedicated forum to share, explore and talk to experts about Microsoft Teams.

    • 已标记为答案 Salavie 2019年1月21日 6:45
    2019年1月21日 3:08
    版主