diff options
| author | Paul Buetow <paul@buetow.org> | 2026-07-26 00:35:39 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-07-26 00:35:39 +0300 |
| commit | 424a3cf07654a9a323cf8591c2ebf9ee177a3fdd (patch) | |
| tree | 2167197b84b0cd59a0b3a35185d57227e6b6b43d /packages/scripts | |
| parent | de406f3145b07a6bfdd62d2e223075d9d20fa1eb (diff) | |
git-server: cut cgit render time by enabling its response cache
cgit ran with cache-size=0 against scan-path over ~80 repos on NFS, so every
request reopened all of them to resolve the index age column. Measured 376ms
per index render, of which only ~50ms was CPU -- the rest was NFS wait. With
the cache enabled the same render takes ~19-29ms.
cache-root points at the existing node-local cgit-runtime emptyDir rather than
the NFS-backed /repos; caching onto NFS is what the old "permission issues"
comment was actually about. The startup script creates the directory since
cgit does not.
fcgiwrap ran as a single worker, so the 26 ArgoCD apps polling conf.git through
git-http-backend serialized against web UI renders; 4 concurrent requests
managed only ~1.5x the throughput of one. Preforking 4 workers separates them.
The cgit container also idled at 105m against a 250m limit and had accumulated
~2.9h of throttled time (nr_throttled 96979), so raise the ceiling and set the
request from measured idle usage.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'packages/scripts')
0 files changed, 0 insertions, 0 deletions
