How does consumer rebalancing work in Kafka?

Depends on what you mean by “blocked”. If you mean “are existing connections closed when rebalance is triggered” then the answer is yes. The current Kafka’s rebalancing algorithm is unfortunately imperfect. Here is what is happening during consumer rebalance. Assume we have a topic with 10 partitions (0-9), and one consumer (lets name it consumer1) … Read more

What is the difference between a channel adapter and a messaging gateway pattern?

That’s a great question since they are similar in that they provide an application access to a messaging system. It is how they acheive it I think that differentiates them. The Channel Adapter pattern deals how to get data from an existing system without modifying that system. Typically the Channel Adapdter is implemented out-of-process. Examples … Read more

Low-latency, large-scale message queuing

@MSalters Re ‘message queue’: RabbitMQ’s default operation is exactly what you describe: transient pubsub. But with TCP instead of UDP. If you want guaranteed eventual delivery and other persistence and recovery features, then you CAN have that too – it’s an option. That’s the whole point of RabbitMQ and AMQP — you can have lots … Read more

Messaging Confusion: Pub/Sub vs Multicast vs Fan Out

I’m confused by your choice of three terms to compare. Within RabbitMQ, Fanout and Direct are exchange types. Pub-Sub is a generic messaging pattern but not an exchange type. And you didn’t even mention the 3rd and most important Exchange type, namely Topic. In fact, you can implement Fanout behavior on a Topic exchange just … Read more

Publish/Subscribe vs Producer/Consumer?

There is a difference between the publish/subscribe and producer/consumer models. Publish/Subscriber: Subscribers subscribe to the publisher. Each message the Publisher publishes is sent to all the subscribers. That is, all subscribers receive the same message. (Think of a newspaper or magazine subscription. All subscribers receive the same magazine or newspaper) Producer/Consumer: Each message the producer … Read more

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)