samsa/internal
Franz Kafka 9e95ce7b53 perf: shared http.Transport with tuned connection pooling
Add internal/httpclient package as a singleton RoundTripper used by
all outbound engine requests (search, engines, autocomplete, upstream).

Key Transport settings:
- MaxIdleConnsPerHost = 20  (up from Go default of 2)
- MaxIdleConns = 100
- IdleConnTimeout = 90s
- DialContext timeout = 5s

Previously, the default transport limited each host to 2 idle connections,
forcing a new TCP+TLS handshake on every search for each engine. With
12 engines hitting the same upstream hosts in parallel, connections
were constantly recycled. Now warm connections are reused across all
goroutines and requests.
2026-03-23 14:26:26 +00:00
..
autocomplete perf: shared http.Transport with tuned connection pooling 2026-03-23 14:26:26 +00:00
cache rename: kafka → samsa 2026-03-22 23:44:55 +00:00
config rename: kafka → samsa 2026-03-22 23:44:55 +00:00
contracts rename: kafka → samsa 2026-03-22 23:44:55 +00:00
engines perf: shared http.Transport with tuned connection pooling 2026-03-23 14:26:26 +00:00
httpapi rename: kafka → samsa 2026-03-22 23:44:55 +00:00
httpclient perf: shared http.Transport with tuned connection pooling 2026-03-23 14:26:26 +00:00
middleware rename: kafka → samsa 2026-03-22 23:44:55 +00:00
search perf: shared http.Transport with tuned connection pooling 2026-03-23 14:26:26 +00:00
upstream perf: shared http.Transport with tuned connection pooling 2026-03-23 14:26:26 +00:00
util rename: kafka → samsa 2026-03-22 23:44:55 +00:00
views feat(ui): make favicons user-configurable, off by default 2026-03-23 14:22:24 +00:00