

Cadence abstracts away the usual challenges of implementing fault tolerance and durability with its fault oblivious code.Ī standard Cadence application includes a Cadence service, workflow, activity workers, and external clients. Designing a distributed applicationĬadence solves these issues by offering a highly scalable fault-oblivious code platform. Developer productivity is regularly sacrificed to keep these sprawling, troubled systems from collapsing. Because these complex systems obscure their own business logic, availability issues are common, often stemming from the application's dependence on scattered and unproven components. Managing these processes means tracking complex states, preparing responses to asynchronous events, and communicating with often unreliable external dependencies.ĭevelopers typically take on these complex challenges with solutions that are just as convoluted, assembling unwieldy systems that leverage stateless services, databases, retry algorithms, and job scheduling queues.

To say it's been a challenge for developers is putting it mildly. Modern applications require complicated interactions between long-running business processes, internal services, and third-party APIs.
