-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
I wrote something similar (windows --network--> raspi zero w --usb--> target device). My first attempt used a simple tcp stream without nagle's algorithm and it was completely useable because I was sending way to many packets this way. After turning nagle's algorithm back on it generally usable but it also introduced something like a 0.5s delay (it's easily noticable, trust me). However the whole thing was pretty unstable, because even a small hick-up in network quality would result in a death spiral that took around 2-3s to resolve itself and make the program usable again. I'm sure I could've optimized my naive tcp protocol further to make it more stable but I chose to fix the problem on the source and wrote my own simple, reliable, ordered network protocol on top of UDP. While it currently has some limitations (no encryption, no congestion control, connection loss is somewhat ungraceful) it runs amazingly stable even under bad network conditions and with unnoticeable latency.
I have been using https://crates.io/crates/zmq since 2015 (shortly after rust 1.0 was announced) in production with pub-sub, request-reply and router without any issue. Processes about 5k msg/seconds (mid-freq market data).