London Dev Meetup Rescheduled! Due to unavoidable reasons, the event has been moved to 21st May. Speakers remain the same—any changes will be communicated. Seats are limited—register here to secure your spot!
AI OnAI Off
London Dev Meetup Rescheduled! Due to unavoidable reasons, the event has been moved to 21st May. Speakers remain the same—any changes will be communicated. Seats are limited—register here to secure your spot!
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?