One of our client come to us with Performance issue, they have multiple plugins written on many OOB as well as in custom entities. They also approached to Microsoft for this. Microsoft recommended them to stop making call to crm webservice and retrieve only required columns.
Addition to these, I noticed some other points
- All plugins were deployed in debug mode instead of release mode.
- In every query they fetched all columns instead of fetching only required columns.
- In every plugin Image (Post/Pre) they included all fields instead of required columns.
So we I started development using Dynamic entity, fetching only specific columns and included only required fields in Images.
Awesome !!! We found a great difference in Performance!!!!