Skip to main content

Developers can incrementally adopt Resonate

Incremental adoption refers to the ability to integrate Resonate into an existing application gradually, avoiding the common ā€œall-or-nothingā€ challenge of adopting new technology. With Resonate, you can start small, experimenting with its programming model in a single-node setup before scaling to more complex, distributed workflows.

Resonateā€™s flexibility supports various persistence strategies, including storing promises in local memory. This means you can adopt the programming model and benefit from features like automatic function execution retries with minimal overhead. While the local memory store doesnā€™t provide process crash recovery, it offers an easy and lightweight way to get started without requiring a full infrastructure setup.

This incremental approach removes the pressure of big migrations or costly refactorings. It enables you to explore the power of Distributed Async Await by installing the Resonate SDKā€”just like any other package in your language environmentā€”without needing a supervisor or persistence server initially.

Resonateā€™s Local Mode is perfect for trying out Distributed Async Await in single-node applications.

In Local Mode:

  • You can integrate Resonateā€™s programming model with no external dependencies.
  • Thereā€™s no need to run the Resonate Server, keeping your setup lightweight and straightforward.
  • Itā€™s ideal for experimenting with the framework or building parts of your application incrementally.

Once youā€™re ready to scale, you can transition to Remote Mode, unlocking the full power of Resonate for distributed recovery and resume.

Try Part 1 of the quickstart tutorials to see Local Mode in action:

For practical guidance on switching between Local and Remote mode, see the following feature guidance:

For a deep dive into the different storage modes, see Durable Promises.