Message queues - the good, the bad...
Details
- What are message queues:
- key components and concepts:
- producer/consumer; blocking/non-blocking; sync/async;
- direct messaging; fan-out or pub/sub; routing
- Why you'd want to implement MQ:
- decoupling time critical code and long-running processes;
- breaking/desynchronizing nested loops;
- simple horizontal scaling;
- What you should be aware/think of before implementing MQs:
- hidden bottlenecks:
- mystery of asynchronous processing;
- debugging is tricky, very tricky;
- maintenance;


