I was called out on Slack this week for my long standing assertion that "source queues are evil". I will cede that this is said somewhat jokingly, but it is based in fact. I have never been able to quickly explain my position so I wrote this gist to organize my thoughts.
- source queues are hard to manage compared to destination queues
- Destination queues will retry if the downstream channel is down for some reason.
- Destination queues allow the engineer to add or reduce threads to process the message volume at the desired rate
- source queues trigger message recovery which is slow