4 ms·
RE: visibility timeout beyond 30 days, you may be more after a “saga” that has state and is long running (hours/days/months/years). You can imagine building a
by plasma 7y ago
RE: visibility timeout beyond 30 days, you may be more after a “saga” that has state and is long running (hours/days/months/years).
You can imagine building a saga system on top of a queue system.
- redact207 7y agoYou're absolutely right, in fact I have a whole package that is just that https://node-ts.github.io/bus/packages/bus-workflow/ https://node-ts.github.io/bus/packages/bus-workflow/. The problem is this. Let's say that I want to trigger a step in a "free trial" saga that sends an email to the customer 10 days after they sign up nudging them to get a paid account. If I can delay send this message for 10 days then it's easy. However because SQS has a much shorter visibility timeout, I have to find a much more roundabout way of triggering that action.
- plasma 7y agoYeah, that makes total sense. For some of our saga's (we don't use SQS -- we use a custom redis queue), we have the saga potentially wake up and immediately sleep again ("Nothing to do right now, defer again in a few days"). But yes, a quirk.
- kondro 7y agoHow about Step Functions? Jobs can run for up to 12 months with wait steps. And can now send action tokens to services like SQS for completion later.