To reduce operational risk, a new code version can be deployed to production gradually. For example, deploy the version to a portion of the servers and monitor them. If all works well, deploy to additional servers; otherwise, stop deployment or rollback.
Generally speaking, coding the business logic for such a workflow can be relatively straightforward. What’s more complicated for some developers is dealing with the technical and infrastructure aspects required to ensure a successful execution. One of the biggest challenges in this context is building reliable, long-running workflows.
Since it is an asynchronous, long-running task that orchestrates APIs, you would probably need to use queues and database to store the state and build an infrastructure to support it.
In the demo we presented in Termporal’s Meetup in San Fransico on March 2024, we showed how easy and elegant it is to build such a workflow on top of autokitteh with just a few lines of code. Check out the video.