Handling 100,000 Webhook Events per Second with Go & NATS JetStream
Deep dive into Render25's distributed event bus architecture, ensuring zero-loss delivery notifications, automatic retries with exponential backoff, and signature verification.

When you send millions of transactional emails, monitoring their status in real time is vital. Render25 dispatches webhook callbacks for seven distinct lifecycle stages: `delivered`, `opened`, `clicked`, `bounced`, `complained`, `deferred`, and `failed`.
Handling this volume without dropping events requires a resilient distributed event bus.
Why We Chose NATS JetStream
We benchmarked Kafka, RabbitMQ, and NATS JetStream under high ingestion loads. NATS JetStream demonstrated sub-millisecond publishing latency, extremely low memory footprints in Go, and deterministic consumer acknowledgments.
Cryptographic HMAC-SHA256 Signatures
Every webhook payload dispatched to your endpoint is cryptographically signed using an HMAC-SHA256 signature passed in the `X-Render25-Signature` header, preventing replay attacks and payload tampering.
Ready to send with Render25?
Create an account and start sending in under 2 minutes.