Advanced Configuration¶
Two configuration settings trade latency or memory for throughput.
Batching NOTIFY¶
dns.notify.batch_ms decides what happens on the write path once a change is
committed.
0(the default)- Every change sends its own NOTIFY before the write is answered. Lowest latency to visibility.
- a window in milliseconds
- The write is answered at commit; changes to the same zone inside the window collapse into one NOTIFY, sent from a queue. Worth it when many records change at once.
Sizing the transfer cache¶
dns.transfer_cache.max_records limits the record count. Approximate memory
costs depend on the record contents:
| Record | Cost |
|---|---|
A with a short name |
130 bytes |
TXT with a 255-byte value |
375 bytes |
TXT carrying a DKIM key |
860 bytes |
The default of 500,000 records is about 64 MiB of plain address records, more
where large TXT values or a signed zone's derived records dominate. Watch
bindizr_zone_cache_records against the limit and
bindizr_zone_cache_evictions_total: evictions rising beside a low hit ratio in
bindizr_zone_cache_lookups_total mean the working set does not fit.