Engineering

Read the workload behind a broker measurement

Use exact images, offered traffic, sink receipts and thermal conditions to judge whether a measurement applies to your deployment.

A broker can acknowledge traffic while a destination queue grows. If your application depends on committed export, ingress rate alone leaves an important part of the work unmeasured.

The October installed-image experiment measured MQTT 3.1.1 QoS 1 traffic through a common independent sink. At 128 bytes, its highest sampled repeated passing points were 80,000 messages/s for both CitusIO Max variants, 40,000/s for Mosquitto 2.1.2 and 15,000/s for EMQX 6.3.2. Original failed and invalid attempts remain visible. The measurement guide and JSON summary identify the exact subjects.

Define completion before offering traffic

The fixture requires exact offered and sink counts/bytes, ACK p99 and oldest pending ACK within one second, deadline backlog within 1.25 seconds of offered work, and drain within two seconds. An invalid offer receives no pass credit. Work that eventually drains after a failed bound cannot supply acceptance.

Use the completion point your application actually needs: broker admission, durable commit, subscriber acknowledgement or a destination receipt. Record those boundaries separately when they differ.

Keep the host and profile visible

This experiment used a memory-backed export profile on an Intel Core i7-3615QM host with three physical product cores and a separate generator. The host reached 103°C and its throttle counter increased by 146. Those conditions limit interpretation and prevent a thermally controlled causal software ranking.

Payload size, topic fanout, connections, security, durable storage and provider behavior can change the result. A measured Max export rate supplies no Pro PostgreSQL capacity or restart-recovery result.

Size the actual deployment

Choose the required tier and MQTT profile, then measure representative traffic on the exact installed image. Retain offered load, end-to-end completion, CPU/memory, backlog, drain and failures. Use the operating skills to keep readiness, application receipts and the next unfinished step visible.