locked
CRM Web Service LookupMruWebService.asmx taking long execution time. RRS feed

  • Question

  • Hello,

    I am working on performance enhancement of specific CRM forms, such as 'Account' and 'Subscription', which are customized in our organization. Currently they take around 13-14 seconds to load the entire page and become editable to the end user.

    While analyzing the page load using Fiddler to understand which requests are taking longer time, we came to know that certain default CRM Web Services are called every times, such as 'LookupMruWebService.asmx' and 'MessageBar.asmx'. (Both operate in parallel as observed in Fiddler.) These services take 4 to 5 seconds each consistently when pages are opened in IE browser. (We are using IE11 here.)

    An interesting finding is that above services hardly take 0.2 to 0.3 seconds when the CRM forms are opened in Chrome/Firefox browser. Therefore, the entire page load timing reduces to 7-8 seconds when the same forms are opened in Chrome/Firefox browser.

    I have these questions for above scenario:
    1. What is the purpose of above two services ('LookupMruWebService.asmx' and 'MessageBar.asmx')? This is nowhere documented on any Microsoft site or any other blogs. There are plenty of other default CRM Web Services getting called too, but they do not take long to finish request-response cycle.
    2. Why above services are 10 times faster in Chrome/Firefox browser consistently, but not in IE?
    3. Is there any way to disable or avoid the above service calls if they do not have any essential functionalities? For eg. if they are only used to load some 'good to have' data on screen, then can we somehow avoid their calls?

    P.S.
    1. I also observed that 'LookupMruWebService.asmx' service is called from 'LookupMruList.js' javascript from following CRM folder on CRM server: 'C:\Program Files\Microsoft Dynamics CRM\CRMWeb\_static\_controls\LookupMru'. Therefore, this is certainly an Out-of-box CRM service call, not a user defined service call.
    2. The 'LookupMruWebService.asmx' has two operations: RetrieveLookupMruData, UploadLookupMruData. The above page loads always call the first operation RetrieveLookupMruData. However, I do not know what data it exactly retrieves.

    Any help in above regard will be hugely appreciated.

    Best Regards,
    Vaibhav.

    Tuesday, June 23, 2015 1:46 PM

Answers

  • 1. What is the purpose of above two services ('LookupMruWebService.asmx' and 'MessageBar.asmx')? This is nowhere documented on any Microsoft site or any other blogs. There are plenty of other default CRM Web Services getting called too, but they do not take long to finish request-response cycle.

    if I remember right LookupMruWebService.asmx is called when the preview items of a lookup are loaded, MessageBar.asmx should be the service to show CRM notification (system one, not user one)

    They are not documented because you need to consider Dynamics CRM as an app, and that webservices are not customizable 

    2. Why above services are 10 times faster in Chrome/Firefox browser consistently, but not in IE?

    Because Chrome and Firefox are faster browsers than IE for most of the web pages

    3. Is there any way to disable or avoid the above service calls if they do not have any essential functionalities? For eg. if they are only used to load some 'good to have' data on screen, then can we somehow avoid their calls?

    No

    P.S.
    1. I also observed that 'LookupMruWebService.asmx' service is called from 'LookupMruList.js' javascript from following CRM folder on CRM server: 'C:\Program Files\Microsoft Dynamics CRM\CRMWeb\_static\_controls\LookupMru'. Therefore, this is certainly an Out-of-box CRM service call, not a user defined service call.
    2. The 'LookupMruWebService.asmx' has two operations: RetrieveLookupMruData, UploadLookupMruData. The above page loads always call the first operation RetrieveLookupMruData. However, I do not know what data it exactly retrieves.

    As I wrote before, how these things are implemented is not your concern when you customize Dynamics CRM


    My blog: www.crmanswers.net - CRM Theme Generator

    • Proposed as answer by Vaibhav.Shah Wednesday, July 8, 2015 11:16 AM
    • Marked as answer by VaibhavShah24 Wednesday, July 8, 2015 12:02 PM
    Tuesday, June 23, 2015 1:56 PM

All replies

  • 1. What is the purpose of above two services ('LookupMruWebService.asmx' and 'MessageBar.asmx')? This is nowhere documented on any Microsoft site or any other blogs. There are plenty of other default CRM Web Services getting called too, but they do not take long to finish request-response cycle.

    if I remember right LookupMruWebService.asmx is called when the preview items of a lookup are loaded, MessageBar.asmx should be the service to show CRM notification (system one, not user one)

    They are not documented because you need to consider Dynamics CRM as an app, and that webservices are not customizable 

    2. Why above services are 10 times faster in Chrome/Firefox browser consistently, but not in IE?

    Because Chrome and Firefox are faster browsers than IE for most of the web pages

    3. Is there any way to disable or avoid the above service calls if they do not have any essential functionalities? For eg. if they are only used to load some 'good to have' data on screen, then can we somehow avoid their calls?

    No

    P.S.
    1. I also observed that 'LookupMruWebService.asmx' service is called from 'LookupMruList.js' javascript from following CRM folder on CRM server: 'C:\Program Files\Microsoft Dynamics CRM\CRMWeb\_static\_controls\LookupMru'. Therefore, this is certainly an Out-of-box CRM service call, not a user defined service call.
    2. The 'LookupMruWebService.asmx' has two operations: RetrieveLookupMruData, UploadLookupMruData. The above page loads always call the first operation RetrieveLookupMruData. However, I do not know what data it exactly retrieves.

    As I wrote before, how these things are implemented is not your concern when you customize Dynamics CRM


    My blog: www.crmanswers.net - CRM Theme Generator

    • Proposed as answer by Vaibhav.Shah Wednesday, July 8, 2015 11:16 AM
    • Marked as answer by VaibhavShah24 Wednesday, July 8, 2015 12:02 PM
    Tuesday, June 23, 2015 1:56 PM
  • Hello Guido Preite,

    Thanks for prompt and elaborate response. I agree with your point that Chrome/Firefox are faster in loading most web pages. However, does that also mean that they would be faster in executing many background services too? I always believed that service response would depend mainly on the web server hosting the service, not on the browser, but here the Chrome/Firefox is giving almost 10x better performance for service calls.

    Best Regards,

    Vaibhav.

    Wednesday, June 24, 2015 10:11 AM
  • Hi Vaibhav

    I am facing exactly the same performance problem as you were and I am curious if you were able to find any solution eventually?

    It looks like we can not disable internal calls to  LookupMruWebService.asmx' and 'MessageBar.asmx services, but is there any way to cache those calls either internally or using external caching solution?

    Really appreciate sharing your experience,

    Regards

    Andrew Neskoromnyi

    avn@baupost.com

    Wednesday, September 16, 2015 9:40 PM
  • Hello Andrew,

    We even spoke with Microsoft people via the premium support. Unfortunately, they also said the same thing that above both are the internal Microsoft services, and hence we should not touch them. What they did to analyze the 'Account' page load performance was to ask us to remove all the custom fields we had added in Account form. In other words, they created a new Account form with only the default/out-of-box fields, and then checked its performance. This new form took roughly 3-4 seconds to load. Therefore, they concluded that whatever additional fields and subgrids we have added on account form, they are causing the performance lag. So now we are in process of removing all fields, adding them one by one on form, and then observing how much lag is introduced due to those fields.

    Well, here Microsoft clearly escaped from explaining what exactly those two services are doing, and which type of fields (for eg. lookups) may cause those services to take more time. Rather, they asked us to do above exercise for each and every field/subgrid on the form. We asked Microsoft about Chrome being so much faster than IE too, despite IE being Microsoft's own product should run CRM smoothly, but Microsoft refused to answer.

    Best Regards,
    Vaibhav.

    Thursday, September 17, 2015 5:52 AM