System Quantity Limits¶
Mosquitto is a message broker which implements MQTT protocols. The following cases describe the number of publishers and subscribers using the topic data through single instances of the Mosquitto broker (Databus) with regard to time interval and QoS (Quality of Service).
Case 1: Time Interval 100 ms and QoS 0¶
-
1 publisher can publish maximum 7 packages of 8 MB (approx. 100k tags) each. 700k tags per second is the maximum throughput the Databus can support for a single publisher.
-
8 publishers can publish maximum 69 packages of 1 MB (approx. 12.5k tags) each. 862.5k tags per second is the maximum throughput the Databus can support for 8 publishers.
| SI No. | No. of Publishers | Throughput of Publisher | No. of Subscribers | Throughput of Subscribers | BufferSize (kB) / Interval (ms) | Latency (ms) / Publisher | Avg. Broker CPU (%) | Max. Broker CPU (%) | System CPU Range (%) | Avg. Broker RAM (MiB) | Max. Broker RAM (MiB) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1 | 7.76 | 1 | 7.76 | 8192 | 28.79 | 55.26 | 65.68 | 17.3 ... 37.5 | 17.34 | 37.42 |
Case 2: Time Interval 100 ms and QoS 1¶
-
1 publisher can publish maximum 5 packages of 8 MB (approx. 100k tags) each. 500K tags per second is the maximum throughput the Databus can support for a single publisher.
-
8 publishers can publish maximum 62 packages of 1 MB (approx. 12.5k tags) each. 775k tags per second is the maximum throughput the Databus can support for 8 publishers.
| SI No. | No. of Publishers | Throughput of Publisher | No. of Subscribers | Throughput of Subscribers | BufferSize (kB) / Interval (ms) | Latency (ms) / Publisher | Avg. Broker CPU (%) | Max. Broker CPU (%) | System CPU Range (%) | Avg. Broker RAM (MiB) | Max. Broker RAM (MiB) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1 | 5.36 | 1 | 5.36 | 8192 | 86.71 | 43.95 | 51.89 | 17.3 ... 24.6 | 18.4 | 37.32 |