I have a SharePoint 2013 performance problem, the CPU and RAM always grow up to 100% and the site is freezing. Even if I reboot the server, stop all SharePoint search services on the farm, once a page is open, the issue happen immediately.
The only way to rescue the web site from such CPU hell is to restore the content database, but a few hours later, the CPU usage reach 100% and site freezing again. Restoring content database is also not an acceptable solution.
The 1st time we had this problem was after creating a new search service and complete the 1st full crawl. After that the SharePoint became buggy, even if I completely removed the search application from Farm, but the performance problem can’t be resolved.
The major processes consuming CPU are the SQL Server and the SharePoint publishing web site.
I run the following SQL to find what eating the CPU on server:
------------------------
SELECT TOP 20 qs.execution_count, qs.total_worker_time AS Total_CPU, average_CPU_inSeconds = (qs.total_worker_time/1000000) / qs.execution_count, qs.total_elapsed_time, st.text, qp.query_plan from sys.dm_exec_query_stats as qs CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle)
as st cross apply sys.dm_exec_query_plan (qs.plan_handle) as qp
------------------------
And the result shows:
Not sure why SharePoint spend so many resources and time on creating the store procedures again, again, again, again, again, again, again, again, again, again, again, again, again ….
Both of those store procedures are already existed in the content database, and they were used to calculate the site navigation.
We have 110+ sub webs, 400+ custom pages on our web site and totally 17000+ items in [AllDocs] table, the content database size is 3G+. It should be a small case and should not cause any performance issue.
I have struggled with this problem for several days but without any luck. Does anybody have suggestion and idea?