I use Kafka because it has almost infinite scaleability in terms of processing events (could be scaled to process hundreds of thousands of events), great monitoring (all sorts of metrics are exposed via JMX).
Downsides of using Kafka are:
- you have to deal with Zookeeper
- you have to implement advanced routing yourself (compared to RabbitMQ it has no advanced routing)