0
votes

I have an Spring Integration flow bean (configured via Java DSL) which processes the messages from kafka queue message channel binded with Spring CloudStream.

The source of kafka message is an external application so what I really want to understand, is what thread/threads will actually process that messages.

Is it a single dedicated thread created with application, or is there a thread pool created and configured automatically by CloudStream, or something else?

And could I manage it somehow?

1

1 Answers

1
votes

The kafka message channel binder uses one thread by default; if you increase the binding consumer.concurrency property, you will get that number of threads - you need at least as many partitions as the concurrency setting because a partition can only be consumed by one consumer.