Asynchronous Sub-Process vs Start Process Smart Service

Certified Lead Developer

In what situations would any of you use an asynchronous sub-process as opposed to the start process smart service.  Based on my understanding, because the smart service will better balance the execution engines without any other negative impacts - I don't see the scenario where I would ever use an asynchronous sub-process.  Can someone please elaborate if there is something that I may be missing?

Thank you!

  Discussion posts and replies are publicly visible

Parents
  • Certified Lead Developer

    What I really think you need to do in this situation is a cost-benefit analysis.

    Asynchronous Sub-Process:  Cost: Potentially unbalanced load  Benefit:  Greatly enhanced ability to track for triage of any incidents, or investigation of bugs.

    Asynchronous Start Process Node:  Cost:  Lack of traceability to the process that started it  Benefit:  Load balanced onto potentially different engine.

    Ideally, unless you're doing several million of something, you shouldn't normally see a noticeable impact on the balance of your engines.  All the processes that call the subprocesses are themselves load balanced, after all.  That lack of traceability, though, will bite you all the time once you get to Production.  Not being able to quickly get at the answers can add hours and days to incident triage, which can cause your Tier 3 Support to miss SLAs and make the project look bad. 

    I'm with Mike and Christine in general, but if you ARE doing a million of something, or your subprocesses are required to be huge, or deeply nested, or take forever, there may be times where you can see negative impact on load balance.  I'd do what I can to minimize the factors that make it important to load balance, but in the meantime switch to startProcess if I have to.

Reply
  • Certified Lead Developer

    What I really think you need to do in this situation is a cost-benefit analysis.

    Asynchronous Sub-Process:  Cost: Potentially unbalanced load  Benefit:  Greatly enhanced ability to track for triage of any incidents, or investigation of bugs.

    Asynchronous Start Process Node:  Cost:  Lack of traceability to the process that started it  Benefit:  Load balanced onto potentially different engine.

    Ideally, unless you're doing several million of something, you shouldn't normally see a noticeable impact on the balance of your engines.  All the processes that call the subprocesses are themselves load balanced, after all.  That lack of traceability, though, will bite you all the time once you get to Production.  Not being able to quickly get at the answers can add hours and days to incident triage, which can cause your Tier 3 Support to miss SLAs and make the project look bad. 

    I'm with Mike and Christine in general, but if you ARE doing a million of something, or your subprocesses are required to be huge, or deeply nested, or take forever, there may be times where you can see negative impact on load balance.  I'd do what I can to minimize the factors that make it important to load balance, but in the meantime switch to startProcess if I have to.

Children
No Data