Context

A reactive system needs to respond quickly, maybe in less than 500 ms or 1 second.

However, it's inevitable that some jobs need to run for long, maybe even in a few hours.

It's impossible to achieve both goals without changing the execution model, to keep the system responsive …