Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more

EPiServer CMS Mode Page Tree Performance

Vote:
 

Hi,

I have recently upgraded a cms site from EPiServer.CMS 11.8.0 to 11.11.2

We are occasionally facing High CPU Usage as soon as we try to access /episerver/cms, 

(Yes, our page Tree structure is bad but it was before the upgrade also, Few Pages contains a deep hierarchy of Content Area.)

High CPU High CPU usage was detected for the application 'XXXXX'(55.6%) on only one instance out of XXXXX instances in your app service plan. The affected instance had a peak overall usage of 100% during this time. Affected instance name: XXXXXXX More Info 
Failed Urls 57.14% of failures came from '/EPiServer/Shell/11.17.1/ClientResources/EPi/cms/nls/en-us/episerver.cms.components.pagetree.js' path.

Any hint or advice before we go to the service desk.

Best Regards

#202962
Apr 04, 2019 15:13
Vote:
 

/EPiServer/cms/Stores/contentstructure/?referenceId=XXX&query=getchildren&typeIdentifiers=episerver.core.pagedata&allLanguages=true&sort()&dojo.preventCache=1554387618898

is another killer

#202965
Apr 04, 2019 16:23
Vote:
 

@Khurram - can you run a profiler such as dotTrace for those requests to see which are in there?

#202967
Apr 04, 2019 16:51
Vote:
 

This won't be possible, Its production, it's Azure, Its a large DB.

#202972
Apr 04, 2019 18:33
Vote:
 

Then you can use Application Insights and memory dumps to find out what is slow :)

The developer support service is there!

#202977
Apr 04, 2019 20:18
Vote:
 

Are you sure that works in the DXC Service version of Application Insights @Quan?

#202986
Apr 05, 2019 7:56
Vote:
 

Which works? 

Khurram just said about Azure, nothing about DXC-S. Honestly I don't know what you can access with DXC-S, but you can always reach out for support

#202987
Apr 05, 2019 8:20
Vote:
 

as an immediate remedy, we restarted applications. it solved the issue but it's under observation now. There is another weird issue that I am having on Release on few environments. To fix that only option that I have is Stop Application/Delete ww root folder and deploy again. But this is I have to do for every release. I am looking into this now but don't have any clue yet.

The argument 'nameOrConnectionString' cannot be null, empty or contain only white space.
....

[ArgumentException: The argument 'nameOrConnectionString' cannot be null, empty or contain only white space.]
   System.Data.Entity.Utilities.Check.NotEmpty(String value, String parameterName) +79
   System.Data.Entity.DbContext..ctor(String nameOrConnectionString) +34
   DbLocalizationProvider.LanguageEntities..ctor(String connectionString) +17
   DbLocalizationProvider.AspNet.Queries.GetResourceHandler.Execute(Query query) +105
   DbLocalizationProvider.AspNet.Queries.GetTranslationHandler.Execute(Query query) +538
   DbLocalizationProvider.EPiServer.DatabaseLocalizationProvider.GetString(String originalKey, String[] normalizedKey, CultureInfo culture) +90
   EPiServer.Framework.Localization.ProviderBasedLocalizationService.LoadString(String[] normalizedKey, String originalKey, CultureInfo culture) +122
   EPiServer.Framework.Localization.LocalizationService.TryGetStringByCulture(String originalKey, String[] normalizedKey, CultureInfo culture, CultureInfo fallbackCulture, String& localizedString) +140
   EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, FallbackBehaviors fallbackBehavior, String fallback, CultureInfo culture) +321
   EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, FallbackBehaviors fallbackBehavior, CultureInfo culture) +22
   EPiServer.Framework.Localization.LocalizationService.GetString(String resourceKey) +70
   EPiServer.Forms.EditView.InitializationModule.SetupFormContainerProperties() +708
   EPiServer.Forms.EditView.InitializationModule.Initialize(InitializationEngine context) +192
   EPiServer.Framework.Initialization.Internal.ModuleNode.Execute(Action a, String key) +58
   EPiServer.Framework.Initialization.Internal.ModuleNode.Initialize(InitializationEngine context) +123
   EPiServer.Framework.Initialization.InitializationEngine.InitializeModules() +248

[InitializationException: Initialize action failed for Initialize on class EPiServer.Forms.EditView.InitializationModule, EPiServer.Forms.UI, Version=4.23.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7]
   EPiServer.Framework.Initialization.InitializationEngine.InitializeModules() +774
   EPiServer.Framework.Initialization.InitializationEngine.ExecuteTransition(Boolean continueTransitions) +194
   EPiServer.Framework.Initialization.InitializationModule.EngineExecute(HostType hostType, Action`1 engineAction) +861
   EPiServer.Framework.Initialization.InitializationModule.FrameworkInitialization(HostType hostType) +185
   EPiServer.Global..ctor() +42
   ASP.global_asax..ctor() +9
#202988
Apr 05, 2019 9:06
Vote:
 

Above issue "name or connection string" is sorted, Just install Latest DBLocalization Provider.

https://github.com/valdisiljuconoks/localization-provider-epi/commit/e840f0cb7fcbf5101b11a235be0ebed37bd509ac

The performance issue isn't solved, we are having this issue about after 7 days after a recycle. we don't recycle each night. I am going to raise this with support.

/K

#203422
Apr 23, 2019 12:04
This topic was created over six months ago and has been resolved. If you have a similar question, please create a new topic and refer to this one.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.