Salesforce Solution Design Performance considerations

Recently for one of our fortune 50 client, I was assigned to improve performance on page load and also on record save. As part of this we have done a detailed analysis and improved Salesforce performance by 40% with various design changes. So I would like to share all our learnings from this 1 year exercise with all Salesforce developers and Architects. Let learn Salesforce Performance considerations.

We will cover the background of project and how we fixed it with Query Optimization, Pageload Performance, Aysnc processes and Lazy loading. The major areas I would like to cover is:

Salesforce Performance considerations

Process Builder Vs Trigger Vs Flow Vs InvocableMethods

  • Mainly when to use what
  • Order of execution
  • Process Builder and flow => SOQL and DML consumption details
  • CPU time used

Query performance Improvement

  • SOQL Vs SOSL
  • Filters, indexing, skinny Tables
  • Query plan Tool usage
  • Relationship query

Usage of asynchronous Operations to improve record save time

  • Asynchronous Triggers
  • @future
  • Page load Performance

Design considerations in classic and lightning for better page load performance

  • Lazy loading
  • Inline VF pages
  • Iframes
  • Lightning pages

How to Get Performance Details

Query Optimization

  • Query Plan Tool
  • Indexed Fields
  • Query Filters
  • Skinny Tables
  • Avoid null conditions
  • Deleted Records in Recycle Bin

Page Load Performance

  • Remove unused fields & related list
  • Archive
  • Lazy Loading
  • Enable Separate Related List Loading
  • Use standard visualforce features
  • Use with Sharing with Apex Class

Salesforce Performance considerations Video

YouTube video

Further learning

  1. https://developer.salesforce.com/docs/atlas.en-us.salesforce_visualforce_best_practices.meta/salesforce_visualforce_best_practices/pages_best_practices_perf_optimizations.htm
  2. https://techforceservices.com.au/salesforce/asynchronous-apex-triggers/
  3. https://releasenotes.docs.salesforce.com/en-us/spring20/release-notes/rn_forcecom_flow_fbuilder_before_save_updates.htm
  4. https://help.salesforce.com/articleView?id=code_dev_console.htm&type=5
  5. https://developer.salesforce.com/blogs/engineering/2013/07/maximizing-the-performance-of-force-com-soql-reports-and-list-views.html
  6. https://help.salesforce.com/articleView?id=000334796&type=1&mode=1

Please Subscribe to the channel to get notification for upcoming recording.

If you are new in Salesforce. Please check our free Salesforce Admin and Salesforce Developer training.

Amit Chaudhary
Amit Chaudhary

Amit Chaudhary is Salesforce Application & System Architect and working on Salesforce Platform since 2010. He is Salesforce MVP since 2017 and have 17 Salesforce Certificates.

He is a active blogger and founder of Apex Hours.

Articles: 461

7 Comments

  1. It looks like the recording is private; I did subscribe to Salesforce Apex Hours on YouTube.

    Thanks in advance.

  2. Very nice video.. thanks for sharing the knowledge Meera and Amit.
    It will be great, if the pot used can be shared too.

Leave a Reply

Your email address will not be published. Required fields are marked *