how do you cut a monolith in half thoughts on message queues

distributed systems