how to design reliable and scalable webhooks with rabbitmq

Post on 11-Apr-2017

66 Views

Category:

Technology

6 Downloads

Preview:

Click to see full reader

TRANSCRIPT

How to Design Reliable and Scalable Webhooks with RabbitMQ

What are Webhooks?

● What: User-defined HTTP callbacks● When: Triggered by an event● How: Events on one site to invoke behavior on another site● Why: Loosely coupled architecture

Typical Webhook Workflow

What if Site B is unreachable or request times out?

What if Site B has internal server error?

Site A is always responsible for message reliability

“Don’t drop any messages”

Reliable Webhook with RabbitMQ

What if Site B is unreachableOr request times out?

What if Site B has internal server error?

Making it Scalable!

Delivering to multiple sites

Handling Multiple Sites

Summary

● Webhooks great for integrating with external systems● Challenges:

○ Handle scenario when external system is offline○ Handle scenario when external system fails○ Delivery to multiple external systems concurrently

Summary

● RabbitMQ & Message Queues are building blocks for webhooks

● RabbitMQ offers:○ Reliability with message queues○ Scalability by running multiple instance of processes

● RabbitMQ provide reliability and scalability out of the box

Thank YouVisit objectzen.com for more great content.

top related