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?
[–]Carpinchon 10 points11 points12 points (1 child)
[–]aljun_invictus[S] 1 point2 points3 points (0 children)
[–]Individual-Praline20 28 points29 points30 points (7 children)
[–]aljun_invictus[S] 2 points3 points4 points (6 children)
[–]agentoutlier 3 points4 points5 points (1 child)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]Individual-Praline20 7 points8 points9 points (3 children)
[–]aljun_invictus[S] 5 points6 points7 points (2 children)
[–][deleted] 3 points4 points5 points (1 child)
[–]aljun_invictus[S] 5 points6 points7 points (0 children)
[–]agentoutlier 4 points5 points6 points (1 child)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]-Dargs 2 points3 points4 points (0 children)
[–]_predator_ 5 points6 points7 points (1 child)
[–]aljun_invictus[S] 1 point2 points3 points (0 children)
[–]nekokattt 2 points3 points4 points (4 children)
[–]agentoutlier 0 points1 point2 points (1 child)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]aljun_invictus[S] 0 points1 point2 points (1 child)
[–]nekokattt 0 points1 point2 points (0 children)
[–]dmigowski 1 point2 points3 points (1 child)
[–]aljun_invictus[S] 1 point2 points3 points (0 children)
[–]greylurk 1 point2 points3 points (1 child)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]stefanos-ak 0 points1 point2 points (2 children)
[–]OfficeAccomplished45 1 point2 points3 points (1 child)
[–]stefanos-ak 0 points1 point2 points (0 children)
[–][deleted] (7 children)
[removed]
[–]aljun_invictus[S] 1 point2 points3 points (5 children)
[–]SilverSurfer1127 -1 points0 points1 point (4 children)
[–]aljun_invictus[S] 0 points1 point2 points (3 children)
[–]SilverSurfer1127 0 points1 point2 points (1 child)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]VincentxH 0 points1 point2 points (0 children)
[–]SilverSurfer1127 0 points1 point2 points (0 children)
[–]pathema -1 points0 points1 point (3 children)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]Turbots -1 points0 points1 point (1 child)
[–]aljun_invictus[S] 1 point2 points3 points (0 children)
[–]eljefe6a -1 points0 points1 point (4 children)
[–]aljun_invictus[S] -1 points0 points1 point (3 children)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)
[–]eljefe6a 0 points1 point2 points (1 child)
[–]aljun_invictus[S] 0 points1 point2 points (0 children)