Also why wasn't emqx used? Why is this solution better for their use case?
Also why wasn't emqx used? Why is this solution better for their use case?
Please see the architecture doc for more details: https://thingsboard.io/docs/mqtt-broker/architecture/
We have implemented TBMQ to satisfy our enterprise customers' needs. Some of them used hivemq before but decided to ask us to build a new solution (TBMQ) as they were not fully satisfied with hivemq. One of the most important advantages we provided is cluster support in our open-source version compared to hivemq.
I guess they could have used the OSS HiveMQ version as a base though. No idea why they didn't do that.
Also, sometimes it could be used because in the previous company where the project author worked they've used Kafka. And the cycle continues.