🛠 Fixed processing a subset of scheduled jobs.
You can process a subset of queues in a given Ironium process. 👀 See README for configuration.
👍 Now supporting AWS SQS.
🛰 Handlers now receive their own copy of the job payload.
👷 We now debug-log the full job in case of error. When using SQS, this includes 👷 the receipt handle, which can be used to delete the job.
⏱ Schedules now get their own queue.
✅ IronMQ still supported, but untested, unless you bring your own
Concurrency is now a global limit, shared by all queues.
🔧 Concurrency can be configured via the
IRONIUM_CONCURRENCYenvironment 0️⃣ variable. Default is 50.
✅ Delayed jobs can be tested by time traveling.
⏱ A scheduled job's time-to-live is equal to its interval. This better matches expectations on transient error conditions.
Ironium will honor
BEANSTALKD_PORTenvironment variables if present.
👍 Allow Ironium to be installed on newer versions of Node.
👷 Failed jobs were not being returned to the queue with a delay when using IronMQ.
⏱ Minimum interval for scheduled jobs is one minute. Ironium was never designed for short intervals; this change only makes that explicit.
➕ Added processing concurrency. By default, Ironium will run 10 concurrent jobs. 🔧 This can be configured via the
👷 Multiple jobs can be queued in a single API call:
⬇️ Dropped support for callbacks and generator functions. Job handlers must return a promise now.
🛠 Fixed bug in error handling when queuing scheduled job.