Instead of "relaying" messages from the MQTT subscriber to the HTTP request via a second channel, we now collect each batch of messages and serialize them into a buffer. This makes it possible to retry the HTTP request if it fails, without losing any data. Using the `Bytes` data structure is the most effecient way to do this, as it implements `Clone` without copying, so each iteration of the retry loop uses the same data in memory. Being able to retry failed HTTP requests eliminates the need for the "preflight" request entirely. |
||
---|---|---|
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
rustfmt.toml |