all A bug anywhere crashes the whole system May consume lots of stale resources Hard to scale; needs even more stale resources Request–response flow is one huge piece Easy to manage
bug in a service crashes only that service Consumes minimal resources Scales well, needs minimal additional resources Supports event-driven architecture Request–response flow breakdown Hard to manage
pubsub, with heavy focus on additional features such as flexible message routing work queues, topics, etc. QoS management round robin load balancing message acks rate limiting unfriendly node.js library