In-memory email queue implementing EmailQueueProtocol.
A lightweight, single-process queued-sending mode: queue-email! enqueues,
process-queue! drains one entry through the wrapped sender, with bounded
retry (failed sends are re-queued up to :max-retries times). Backed by a
thread-safe ConcurrentLinkedDeque.
For distributed queuing across replicas use jobs-integration (jobs module)
instead — this adapter's state is per-process and lost on restart.
In-memory email queue implementing `EmailQueueProtocol`. A lightweight, single-process queued-sending mode: `queue-email!` enqueues, `process-queue!` drains one entry through the wrapped sender, with bounded retry (failed sends are re-queued up to `:max-retries` times). Backed by a thread-safe `ConcurrentLinkedDeque`. For distributed queuing across replicas use `jobs-integration` (jobs module) instead — this adapter's state is per-process and lost on restart.
(create-in-memory-queue {:keys [sender max-retries] :or {max-retries 3}})Create an in-memory email queue.
Options:
Create an in-memory email queue. Options: - :sender - an EmailSenderProtocol implementation (required) - :max-retries - re-queue attempts on send failure (default 3)
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |