Tune Fitz with measurements, not guesses.
- Measure baseline throughput and latency.
- Identify bottleneck class: CPU, memory, storage, or network.
- Change one variable at a time.
- Re-run representative benchmarks.
Benchmark references are in development/benchmarks.md and development/bench-targets.md.
- Keep domain handlers synchronous and short.
- Avoid allocation-heavy transformations in codec and routing path.
- Keep wildcard subscription patterns bounded per realm.
- Family actor shard count is fixed at
min(available_parallelism, provisioned route families). - Keep the normal lane at its 16,384-message contract capacity and use the separate control lane for drain, cleanup, and other control work.
- Watch family-lane depth and enqueue backpressure for starvation; never compensate for saturation with an unbounded async queue.
- Use stronger durability levels only where required by workload.
- Keep transaction scope narrow and route-local.
- Validate fsync-backed paths with realistic I/O pressure.
- Confirm p95 and p99 latency do not regress.
- Confirm error rates are unchanged or improved.
- Confirm no cross-realm interference under load.