Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate concurrency support for the MqttPahoMessageDrivenChannelAdapter #2720

Open
artembilan opened this issue Jan 25, 2019 · 2 comments
Labels
in: mqtt status: waiting-for-triage The issue need to be evaluated and its future decided type: enhancement
Milestone

Comments

@artembilan
Copy link
Member

Affects Version(s): <Spring Integration version>


@artembilan artembilan added type: enhancement status: waiting-for-triage The issue need to be evaluated and its future decided in: mqtt labels Jan 25, 2019
@garyrussell garyrussell added this to the Backlog milestone Feb 8, 2019
@luisfranciscob
Copy link

luisfranciscob commented Nov 11, 2021

Does this open issue mean that the current implementation of MqttPahoMessageDrivenChannelAdapter is single threaded?

@artembilan
Copy link
Member Author

The underlying Paho Client is single-threaded.
It does have two loops:

  1. CommsReceiver.run() to read data from the MqttInputStream - mostly messages for the subscibed topics.
  2. CommsCallback.run() to deliver those messages from an in-memory queue to the subscribed listeners in the application.

So, generally speaking: we always get delivery for all the topic we have subscribed in a single thread.
That's technically a point of this issue: to be able to distribute topics subscription between concurrency configured.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: mqtt status: waiting-for-triage The issue need to be evaluated and its future decided type: enhancement
Projects
None yet
Development

No branches or pull requests

3 participants