Skip to content

python: restore use of TCP/IP for IQM, status, and info #464

@ymorin-orange

Description

@ymorin-orange

What:

In 9b2c91c, c85a328, and 6a79515, support for using a TCP/IP connection was removed, on the assumption that the corresponding components were only ever be local to the broker, and thus they should only be able to connect with a UNIX socket.

However, that imposes a burden on the deployement, especially now that the IQM may be scaled
horizontally (via MQTT shared subscriptions): all the IQMs, the broker, and the status and info programs must azll live on the same machine, requiring a big machine to make the horizontal scalability of the IQM meaningful.


Suggestion:

Restore the ability for the IQM to connect over a TCP/IP connection (in addition to a UNIX socket) so that the IQM can be spread over multi machines and yet again better scale; deployements can choose to use a UNIX socket or a TCP/IP connection, or a mix of both, to catter for small instances with very few users, or to scale to bigger isntances with more users (but still in the range that the IQM can cope with, of course).

While at it, also do so for status and info (they are not time-critical, so we do not need them to be on the same machine as the broker).

Metadata

Metadata

Assignees

Labels

Projects

Status

No status

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions