November Happy Hour will be moved to Thursday December 5th.
AI OnAI Off
November Happy Hour will be moved to Thursday December 5th.
There is a setting enableSimpleAddress on the provider line, and that will turn of the shortcut urls
On a large site (40 country sites and running episerver 5 R2 we are sometimes seeing slow requests. It looks like the time is spent somewhere in one or more http modules since the rendering of the actual page is pretty fast. Trying to get to the root of the problem I installed the SqlClientLogger and I am seeing the following stacktrace occur regullary.
netQuickSearchByExternalUrl @Url=~/assets/graphics/somegraphic at System.Data.Common.DbCommand.ExecuteReader() at EPiServer.DataAccess.AbstractCommand.ExecuteReader(Int32 resultSetCount) at EPiServer.DataAccess.AbstractCommand.ExecuteReader() at EPiServer.DataAccess.PageQuickSearchDB.<>c__DisplayClass8.<FindByExternalUrl>b__7() at EPiServer.DataAccess.DataAccessBase.<>c__DisplayClass7.<Execute>b__6() at EPiServer.DataAccess.DatabaseFactory.Execute[TResult](Action`1 method) at EPiServer.DataAccess.DataAccessBase.Execute(Action action) at EPiServer.DataAccess.PageQuickSearchDB.FindByExternalUrl(String path) at EPiServer.Web.SimpleAddress.SimpleAddressToInternal(UrlBuilder url, Object& internalObject) at EPiServer.Web.FriendlyUrlRewriteProvider.ConvertToInternalInternal(UrlBuilder url, Object& internalObject) at EPiServer.Web.FriendlyUrlRewriteProvider.ConvertToInternal(UrlBuilder url, Object& internalObject) at FooBarFriendlyUrlRewriteProvider.ConvertToInternal(UrlBuilder& url, Object& internalObject) at FooBarFriendlyUrlRewriteProvider.ConvertToInternal(UrlBuilder url, Object& internalObject) at EPiServer.Web.UrlRewriteModule.HttpUrlRewriteToInternal(UrlBuilder url) at EPiServer.Web.UrlRewriteModuleBase.BeginRequestEventHandler(Object sender, EventArgs e) at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) at System.Web.HttpApplication.ApplicationStepManager.ResumeSteps(Exception error) at System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData) at System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) at System.Web.HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr) at System.Web.Hosting.ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)
793 ms
so it looks like executing netQuickSearchByExternalUrl has taken 793ms and it's being called from EPiServer.Web.FriendlyUrlRewriteProvider.ConvertToInternalInternal. The strange/stupid thing is that it never returns a resultset for the URL's it's trying to resolve so calling it is useless to begin with. My questions are:
a) has anybody seen this before?
b) how can I prevent netQuickSearchByExternalUrl from being called for these requests (without disabling the urlrewriter entirely)?
c) how can I improve the performance of netQuickSearchByExternalUrl?