maintenance daemon
Knot Resolver has bunch of tasks which need to be done only once, so it does not make much sense to do them from all workers independently.
Examples:
-
cache cleanup - #257 (closed) -
cache import - zimport
into cache -
TLS certificate maintenance (DNS-over-TLS, HTTP module) -
TLS ticket rotation -
RFC 5011 -
TA bootstrap ... and possibly others.
In long term we might create a "maintenance" daemon which could take care of these tasks so they would not block worker threads (it would also avoid duplication of tasks).
This would require means to communicate between maintenance daemon and workers.