BlogsTemporalEager Workflow Start

Eager Workflow Start

Eager Workflow Start

2
posts
2024–2025

Eager Workflow Start (EWS) is an experimental latency optimization that reduces the time it takes to start a workflow by allowing the starter and worker to interact directly, bypassing some server operations. The start response with EWS includes the initial workflow task when there is a local worker ready to process it. This is particularly useful for short-lived workflows that interact with other services using local activities and are deployed close to the Temporal Server. The current implementation is experimental.

2025

Reduce end-user latency and accelerate Temporal Workflows

2/12/2025

This post details techniques to improve workflow performance by optimizing response time, maintaining durability and reliability. It introduces the 'Early Return' pattern to split workflows into synchronous and asynchronous parts for faster user feedback, demonstrating a 40-50% reduction in latency. It also explains 'Local Activities' which run in the same process as workflows, saving round-trip calls to the Temporal Service and achieving 60-70% faster results. Combining both techniques can reduce workflow response time by up to 91%. The post also touches upon 'Eager Workflow Start' as a way to make workflows more local.

2024

Improving latency with Eager Workflow Start in Temporal

4/29/2024

Introduces Eager Workflow Start (EWS), an experimental feature to reduce workflow start latency. Details the mechanism by which the starter and worker interact directly, bypassing server matching. Provides performance metrics showing significant latency reduction (43% p50, 40% p99). Discusses limitations including the co-location requirement for starter and worker and lack of support for worker versioning with build IDs. Includes a 'Hello World' example in Go demonstrating how to enable EWS by sharing a client connection and setting the `EnableEagerStart` flag.