Deciding on the Implementation

Axon Framework doesn’t create a DeadlineManager automatically for you, so you have to choose from a set of implementations. When setting up deadlines for sagas it’s best to choose a solution based on the saga storage solution. For deadlines in aggregates, it’s best to choose the same storage solution as the Event Store. In case you use Axon Server, it’s best to store deadlines in the same solution as your projections. If you are using a relational database, the DbSchedulerDeadlineManager is the best choice. For MongoDB the JobRunrDeadlineManager would be a good second. Both solutions require a database as a synchronization and persistence layer. For now, sticking to the SimpleDeadlineManager as it’s easier to use. Note that the SimpleDeadlineManager isn’t production-ready, as it doesn’t persist deadlines or communicate between application instances.