Resque Bus Presentation
Or view the slide sheet below
Resque Bus
Brian Leonard
TaskRabbit
02/17/2014
Redis
- Key/Value Store
- Atomic Operations
Resque
Resque Pattern
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
New Profile App
Resque Bus Pattern
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
It’s Just Resque
Use Cases
Publishing all all data changes, especially state changes.
- Rails app communication
- Bus Apps
- Loggers
Rails app communication
- Own codebase and storage mechanisms
- +1: Local Simplicity
- +1: Local Specialization
- -1: Global Complexity
Bus Apps
- No UI, only listens to bus
- +1: Local Simplicity
- +1: Local Specialization
- +1: Memory Profile
Examples
- External Analytics
- Communications
- Fraud
Switchboard
- Centralized sending email, text messages, push notifications, etc.
- No shared knowledge or credentials
- Asynchronous API for all apps to use and just focus on the content.
Loggers
- Subscribes to everything that’s published
- Writes to Elastic Search
Enabling…
- Tracing events through system
- Simple centralized logging
- Realtime business dashboards and metrics
Best Practices
- Always Be Publishing
- Make many small bus apps
- Start small
Thanks!
Questions?