4 ms·
> However, one downside of message queues is the fragmentation of protocols, which results in high migration costs for users. So, I have a little bit of experi
by sc68cal 2y ago
> However, one downside of message queues is the fragmentation of protocols, which results in high migration costs for users.
So, I have a little bit of experience with this, because of some work using Celery which abstracted out the message queue protocol, as well as Redis' pub/sub and AMQP directly when I did some work on Ansible EDA.
Honestly the code for consuming from these message systems was an incredibly small percentage of the code, due to the plethora of existing libraries for those protocols. Like, they were almost one-liners to block and consume from the queue.
The majority of the code was handling the actual message contents and acting upon them.
So, I don't think your statement is accurate.
This may be something to consider, because if you are doing the AMQP or Kafka protocol just to be compatible, it may not actually be worth it, and instead it may be worth just providing a protocol that actually maps to what your system does.
- aljun_invictus 2y agoYou're right, there are many trade-offs involved. I'm considering this as well, but it's best to use a widely adopted ecosystem for external use.