Grasswire’s Messaging Service



Nice post detailing your tech stack! I was wondering if you could share some thoughts on your choice of message broker. What system did you chose, for what reasons, and have you had any pain points with it? — lukecycon


Thanks Luke! We chose RabbitMQ. One of the most compelling features of RabbitMQ is the ability to set up complex routing to different consumers. This can be really important if things are divided into many smaller services. The other option is Kafka. Kafka has very particular message delivery guarantees that we don’t need. Kafka also seems to be optimized for 100s of thousands of messages per second which is also something we don’t need (at least not at the moment). All in all, we chose RabbitMQ because it is more mature, it has a lot of client support, and some very powerful features for routing.