Storm (with Python (and a side of Clojure))
What is it?
- Realtime Computation System
- Distributed
- Fault tolerant
- Can be used with any language
My Life Before Storm
Things I spent my time doing...
- Standing up Message Queues and Services
- Fiddling with config between queues and services
- Writing endless monitors for queues and services
- Writing endless automated or manual recovery processes when queues/services failed
- Devising elaborate plans for message tracking through the system
- Building great integration environments to actually tests all of this in
- Creating deployment plans
- (sometimes writing the actual business logic I needed .....)
Things Storm Does For Me
- Manages messaging between bolts
- Manages bolt health
- Manages deployments
- Tracks messages, can guarantee reliable processing
- Easy to run locally
Let's Contrive an Example!
Demo!
Enough Talking Phil, I demand Code Now
https://github.com/philipsdoctor/storm-demo-talk
Storm with just Python
https://github.com/AirSage/Petrel