Podcast - Hyper Thread iN Salesforce

Podcast – How to Achieving Hyper-Threading in Salesforce

Total number of Asynchronous Apex which includes Batch Apex, Future Method, Queueable & Scheduled job is 250k or 200 x Total User license whichever is greater.

Now lets do some fact check :

  • Execute method of Batch Apex can only call 1 Queueable
  • Scheduler can call 50 Queueable
  • We can have only 100 Schedulers in an Org
  • If we run 1 Scheduler every minute = 60 Scheduler
  • If each Scheduler executes 50 Queueable every minute, then 60×50 = 3000 jobs / min. Which means 3000 x 24 = 72k jobs / day

Big Question

Can you design an application which can use full potential of Async governor limit – even 250k / day ?

Designing Scalable Hyper Thread Application in Salesforce

I have discussed various approach to answer these questions on below podcast by SalesforceWay

Part 1 – Salesforce Hyper-Threading Road blocks

Part 2 – Salesforce Hyper-Threading Options

Feel free to drop comments and your thoughts on solution !!!

Posted

in

by


Related Posts

Comments

2 responses to “Podcast – How to Achieving Hyper-Threading in Salesforce”

  1. John Collins Avatar

    Hi Jitendra, I listened to the podcast on your queueable solution. How do you handle errors and monitoring the various processes when there are so many platform events and queueable calls? Would you be willing to share more about that part of the solution? Thanks

    1. Jitendra Avatar

      Hi John,
      I don’t monitor Platform Event itself. However every job is custom object, using reflection I deserialize them to submit job if limits are full (You can check my post on 100 queueable to see proof of concept). My whole error handling and reporting is around this object. I have dashboard which gives me insights of job and performance in last 30 days, 7 days and today. I have retry mechanism with some guards and rails. Example – I don’t do retry on validation errors. I do retry on Record locking error. I dont do retry on some classes, I de – prioritize few jobs on basis of class name etc.

      It all started with basic code and eventually ended up with framework itself.

Leave a Reply to John CollinsCancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from Jitendra Zaa

Subscribe now to keep reading and get access to the full archive.

Continue Reading