The UDP receiver can handle both single and multi row write requests. It is currently single-threaded, and performs both network I/O and write jobs out of one thread. The UDP worker thread can work either on its own thread or use the common thread pool. It supports both multicast and unicast.
By default, QuestDB listens for
multicast line protocol packets over UDP on
18.104.22.168:9009. If you are running QuestDB with Docker, you will need to
publish the port
-p 9009:9009 and publish multicast packets with
TTL of at least 2. This port can be customized, and you can also configure
QuestDB to listen for
Uncommitted rows are committed either:
- after receiving a number of continuous messages equal to
- when UDP receiver has idle time, i.e. ingestion slows down or completely stops.
The UDP receiver configuration can be completely customized using configuration keys. You can use this to configure the IP address and port the receiver binds to, commit rates, buffer size, whether it should run on a separate thread etc.
Find an example of how to use this in the InfluxDB sender library section.