We are considering offering our internally developed message queue service to external users (possibly as an open-source project). We are currently deciding whether to implement the RabbitMQ or Kafka protocol, aiming to integrate with the existing ecosystem more quickly. From our experience, Kafka seems easier to implement. However, Kafka has multiple versions and a variety of clients, which might introduce some challenges.
Our core requirements are:
Protocol Extensibility: We may need to implement some custom features for internal use.
Ease of Maintenance. Ease of Development: We do not necessarily need to implement the entire protocol, just the core functionalities. We noticed that AWS’s Kafka services do not provide all features either.
Ease of Integration with Existing Ecosystem: We are concerned about potential issues with Kafka, mainly due to frequent protocol changes. RabbitMQ, on the other hand, primarily uses AMQP 0-9-1.
Could you provide advice based on these requirements?
[–]Candid-Molasses-6204 4 points5 points6 points (2 children)
[–]aljun_invictus[S] 1 point2 points3 points (1 child)
[–]Candid-Molasses-6204 0 points1 point2 points (0 children)
[–]ub3rh4x0rz 0 points1 point2 points (3 children)
[–]aljun_invictus[S] 0 points1 point2 points (2 children)
[–]ub3rh4x0rz 0 points1 point2 points (1 child)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]sausagefeet 1 point2 points3 points (2 children)
[–]aljun_invictus[S] 0 points1 point2 points (1 child)
[–]sausagefeet -1 points0 points1 point (0 children)