Synchronizing Concurrent Workflows

Industry

Retail

Use Case

-

Company Size

-

SDK

-

Temporal

-


At Yum Brands, we initially implemented the former approach for our menu publishing process since it was somewhat less code & slightly more intuitive.

However, it came with a notable caveat that wasn’t immediately apparent to us as new Temporal users-additional complexity to tracking the success and failure of the synchronized activities. That complexity is due to the synchronized activities running in a workflow entirely independent of the parent workflow where we’re aggregating successes and failures.

This is of particular concern for us since: - Our parent workflow performs a large batch of these synchronized activities - There is a distinct possibility that these activities will have non-recoverable failures that we must track.

The latter approach resolves that complexity by keeping the batch of activities executing directly in the parent workflow, where we can easily track their successes and failures with standard TS try/catch flow control. This change significantly simplified the code for our use case despite requiring somewhat more code overall.

Build invincible apps

Ready to learn why companies like Netflix, Doordash, and Stripe trust Temporal as their secure and scalable way to build and innovate?