locked
CRM 2011 service is very slow. Need To improve performance. RRS feed

  • Question

  • Hello Everybody,

    I had a data Import tool which import mainframe generated CSV file into CRM and this tool is scheduled in mainframe scheduler.

    Due to business requirement we have re-developed new data Import tool which functionaly doing same task as the old data Import tool.Old Import tool uses CRM 4.0 service and New tool uses CRM 2011 service.

    New tool is very slow as service is taking time for its processing.

    Is there any ways to improve performance????

    I tried to copy proxy classes from CRM 4.0 to new data import tool and build it,added serialization xml file to project but still it is not giving the desired performance.

    If I update proxy classes of old data Import tool to CRM 2011 service then this old application give same performance as the new application.

    It indicates that there is something fishy with service. Do you have any solution to improve performance using new service??

    Both the tool imports any entity. So I need a generalised solution.

    Thanks in advance.

    Monday, January 16, 2012 9:27 AM

Answers

  • Hi There..

    There was some network issue and when i coped CRm 4.0 old proxy into new application then it is giving performance. I executed this tool directly on server itself.

    • Marked as answer by Sushma Patole Thursday, January 26, 2012 12:41 PM
    Thursday, January 26, 2012 12:41 PM

All replies

  • hi Sushma,

      You can do few things to trace the bottle neck,

     - Check the application log for any error

     - put a trace within your tool and find out which bit of the code is taking time

     - use SQL profiler

      - its your new CRM 2011 setting using spilt server enivornment ?

    hth

    dkay

    --------------------------------------------------------------------------------
     If you find this post helpful then please "Vote as Helpful" and "Mark As Answer".

    Monday, January 16, 2012 10:38 AM
  • Hi There,

    This is a console application and uses on premise deployment. I had already found the bottleneck. There is no error is application log, its work perfectly but without speed.

    When we try to create record, retrieve record or try to change state, it takes time. All CRM service call are taking time.

    Old import tool takes 14 min to import 1000 records and new import tool take 44 minutes to import same 100 record to CRM. If I update proxy class of old import tool(Pointing to new service 2011) then it will also take 40 mins to import 1000 records.

    So i guess problem is with service or some service proxy. But I am not able to find it.

    I tried for below property also but don't get performance.

    objCrmService.PreAuthenticate =

    True

    objCrmService.UnsafeAuthenticatedConnectionSharing = True

     

      

     

     


    Monday, January 16, 2012 11:54 AM
  • Kindly explain bit more as I am not getting what exactly you wanted.

    its your new CRM 2011 setting using spilt server enivornment ?

    Monday, January 16, 2012 1:11 PM
  • hi Sushma.

    The problem might be because of authentication between two server.

    Split enviornement  means that you have seperate server for Application and Database

    If you have split envionment make sure that its set up properly or you might end with what is called a "double hop issue"

    if you want to know more about double hob issue please find this link

    http://dotnetrobert.com/?q=node/36

    hth

    dkay

    --------------------------------------------------------------------------------
     If you find this post helpful then please "Vote as Helpful" and "Mark As Answer".

    Monday, January 16, 2012 3:53 PM
  • There are a few things you can consider in your application:

    http://msdn.microsoft.com/en-us/library/gg509027.aspx

    Make sure to disable unnecessary plugins, and cache the OrganizationServiceProxy class.  You may also want to consider importing records directly, rather than through the Data Import engine.

    -JayB

    Monday, January 16, 2012 4:31 PM
  • Hi

    Did this help?

    Please make sure to mark as answer to the response that helped you get through. This will help others with similar problem identify the answer and also close this thread as resolved.

    Thanks

    Dkay

    Monday, January 16, 2012 9:40 PM
  • Hi There,

    Kerberos protocol is already set.

    I have developed this application using Dynamics 4.0 only. We migrated from CRM 4.0 to CRM 2011.

    While testing on pre production server we found that this New data Import tool is not working at all after migration

    So I have updated its proxy classes from 4.0 to new CRM 2011 services(crm service, metadata service and discovery service) and pointing to pre production server.

    After doing this I came to know, now its working but it is much more slow as compared to old tool.

    So to check issue, i have updated proxy class of old tool pointing to CRM service 2011 and to new server, then it gives the same performance as the new application.

    It means that there is something wrong with proxy class or service.

    By looking at log file, I came to know that service is taking time for each update or retrieval or state change.

    And i wanted to do something to reduce this update or retrieval time.

     

     

    Tuesday, January 17, 2012 3:31 PM
  • Hi There,

    Thanks for suggestion.

    Every day we need to import 52 entities and 1 entity can contain almost 47 thousand records on daily bais and CRM inbuild functionality is not sufficient to import records in required manner which is a business logic.

    Tuesday, January 17, 2012 3:36 PM
  • So do I understand you to say that you have a console app that is using the WS proxy and manually inserting each of the records, item by item?  When you say that the import tool isn't working - do you mean your import tool or the new Data import features of 2011?  Since you have the old proxy, you may want to try to hit the 4.0 Endpoint (which is there for legacy reasons) and see what the performance is like - I assume it's going to be as slow or slower but it's worth taking a look at.

    And just to be sure, are you relatively sure that the only difference you're seeing is attributable to the different proxies?  what I mean is, have you isolated everythign else and verified that there's not some other overriding issue causing the differences?  Have you look at the Database trace or any network diagnostics?

     

    Also - one other question... are the security roles and permission sets effectively the same between both installs - I realize that 2011 is fundamentally different, but w/ respect to the permissions, I'm just wondering if maybe you have FLS enabled on some of the fields or something permission wise.  Just to isolate things, you may want to temporarily remove any fls constraints you have - just grant (temporarily - I'm absolutely not saying you should do this in production or for anything other than just a quick diagnostic) full permissions to one object (just pick one and try to load it) and see if that makes a difference.  It may well be related to the specific permissions and permission checks so you want to isolate that and take it off the table


    Cordially, W.G.Ryan - www.williamgryan.mobi
    Tuesday, January 17, 2012 7:17 PM
  • New import tool(Custom application) was not working so I have updated proxy to CRM 2011.

    I am removing web references for CRM and metadata service instead of that I will use sdk and sdkproxy dll from CRM 4.0. I hope this will help.

    I will use discovery service as web reference only. lets hope i will get result but yet I am not sure how much it will be helful.

    Security roles and permission same for everything.

    If you have any other solution, Please help me get ride of this.

    Wednesday, January 18, 2012 11:04 AM
  • Hi There,

    This approach is also not working.

     

    Friday, January 20, 2012 11:53 AM
  • Hi There..

    There was some network issue and when i coped CRm 4.0 old proxy into new application then it is giving performance. I executed this tool directly on server itself.

    • Marked as answer by Sushma Patole Thursday, January 26, 2012 12:41 PM
    Thursday, January 26, 2012 12:41 PM