• How to Limit NodeRunner.exe High Memory, CPU Usage


    roblem: NodeRunner.exe is consuming a lot of memory and CPU resulted in performance issues on SharePoint 2013 server.

    Solution:
    NodeRunner.exe is a SharePoint 2013 Search service component and it is resource hungry. To reduce the CPU and Memory impact of this process, follow below steps:

    Step 1: Reduce the CPU impact of the search service
    By default SharePoint search uses "maximum" to speed up its search crawling process. To reduce the CPU usage of the search service, run this PowerShell script from any one of your SharePoint 2013 server:

    Set-SPEnterpriseSearchService -PerformanceLevel Reduced

    This sets Search Service Application crawl component to use less number of threads.


    Step 2: Limit the NodeRunner.exe's Memory usage: 

    • Open the configuration file at "C:Program FilesMicrosoft Office Servers15.0SearchRuntime1.0 oderunner.exe.config" 
    • Locate the node "nodeRunnerSettings", Set the value for "memoryLimitMegabytes" attribute to specific value (E.g. 1024). By default its value is 0 (which means unlimited memory). 

    Step 3: Restart Search Service
    For the above steps to take effect, You have to restart SharePoint 2013 search service. Go to Services console, restart SharePoint Search Host Controller process. Or use the PowerShell cmdlet to restart Search host controller process:

    Restart-Service SPSearchHostController

    The downside of the above changes: Since you are restricting resources to SharePoint search service, it increases search crawl time! 

    Do not limit node runner memory in Production Servers!Instead try increasing the Memory on SharePoint Production servers.

    PowerShell to Set NodeRunner config:

    #NodeRunner File Path
    $NRFile= "C:Program FilesMicrosoft Office Servers15.0SearchRuntime1.0
    oderunner.exe.config"
     
    #Get the XML
    $NodeRunnerConfig = New-Object XML
    $NodeRunnerConfig.Load($NRFile)
     
    #Set Limit to 100 MB
    $NodeRunnerConfig.configuration.nodeRunnerSettings.memoryLimitMegabytes = "100"
    $NodeRunnerConfig.Save($NRFile)

    #Read more: http://www.sharepointdiary.com/2015/02/limit-noderunner-high-memory-cpu-usage.html#ixzz5OhFQ8yKc

    http://www.sharepointdiary.com/2015/02/limit-noderunner-high-memory-cpu-usage.html

  • 相关阅读:
    .NET Core依赖注入集成Dynamic Proxy
    MediatR-进程内的消息通信框架
    03-EF Core笔记之查询数据
    02-EF Core笔记之保存数据
    01-EF Core笔记之创建模型
    EF Core 基础知识
    CQRS+ES项目解析-Equinox
    CQRS+ES项目解析-Diary.CQRS
    不要让事实妨碍好故事:Facebook精准广告产品与硅谷创业揭秘,4星奇书《混乱的猴子》
    会讲故事的前物理学家万维钢解读、推荐过的书24本,好书一半
  • 原文地址:https://www.cnblogs.com/jianyus/p/9505272.html
Copyright © 2020-2023  润新知