docs: honest 'minutes -> seconds' framing + document --enable-compress-response-body

- banner/diagram: replace localhost '4 ms' (server-only) with the real
  page-load experience (minutes -> seconds); soften tagline to 'Fast'
- README: add section on the optional --enable-compress-response-body flag
  for gzipping the rest of ComfyUI (frontend scripts, other APIs)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-04 00:41:41 +02:00
parent f2df35f04c
commit e3a8af5a53
3 changed files with 30 additions and 12 deletions
+22 -4
View File
@@ -26,10 +26,10 @@ On load it injects an aiohttp **middleware** into ComfyUI that intercepts
- **caches the built response in memory _and_ on disk** (`./cache/`), so it is - **caches the built response in memory _and_ on disk** (`./cache/`), so it is
built once instead of on every load — and the disk copy makes **restarts built once instead of on every load — and the disk copy makes **restarts
instant** (no rebuild); instant** (no rebuild);
- **serves it gzipped in ~milliseconds** (≈85% smaller, independent of any CLI - **serves it gzipped** (≈85% smaller transfer, independent of any CLI flag),
flag); straight from cache **without running the build**;
- serves from cache **without running the build**, so the event-loop freeze is - because the build never runs on a normal load, the event-loop freeze (and the
gone for normal loads. long black screen) is gone — page loads drop from **minutes to seconds**.
The only time a build runs is the first load after install, or when you The only time a build runs is the first load after install, or when you
explicitly refresh (below). explicitly refresh (below).
@@ -71,6 +71,24 @@ curl -s -H 'Accept-Encoding: gzip' -o /dev/null \
``` ```
ComfyUI's startup log should show `Tenaciousload: object_info cache middleware installed`. ComfyUI's startup log should show `Tenaciousload: object_info cache middleware installed`.
## Recommended: gzip the rest of ComfyUI
This pack already gzips the cached `object_info` on its own. To **also** gzip
everything else ComfyUI serves — most importantly the *hundreds* of frontend
extension scripts, plus the other API responses — launch ComfyUI with its
built-in compression flag:
```bash
python main.py --listen --port 8188 --enable-compress-response-body
```
- It's a **stock ComfyUI** option (defined in `comfy/cli_args.py`), not part of
this pack, and it's **optional** — Tenaciousload works fine without it.
- It's strongly recommended for **remote access**: those extension scripts are
many small requests that compress very well, so the flag noticeably cuts the
total transfer on top of the `object_info` cache.
- It costs a little CPU per response to compress; on a fast machine this is
negligible compared to the bytes saved over the network.
## Notes ## Notes
- The disk cache lives in `./cache/` (git-ignored). Delete it, or use the refresh - The disk cache lives in `./cache/` (git-ignored). Delete it, or use the refresh
button, to force a rebuild. button, to force a rebuild.
+7 -7
View File
@@ -31,14 +31,14 @@
<!-- wordmark --> <!-- wordmark -->
<text x="208" y="84" font-family="Segoe UI, Helvetica, Arial, sans-serif" font-size="19" letter-spacing="7" font-weight="600" fill="#71717a">COMFYUI</text> <text x="208" y="84" font-family="Segoe UI, Helvetica, Arial, sans-serif" font-size="19" letter-spacing="7" font-weight="600" fill="#71717a">COMFYUI</text>
<text x="205" y="150" font-family="Segoe UI, Helvetica, Arial, sans-serif" font-size="58" font-weight="800" fill="url(#accent)">Tenaciousload</text> <text x="205" y="150" font-family="Segoe UI, Helvetica, Arial, sans-serif" font-size="58" font-weight="800" fill="url(#accent)">Tenaciousload</text>
<text x="208" y="187" font-family="Segoe UI, Helvetica, Arial, sans-serif" font-size="19" fill="#a1a1aa">Instant page loads for massive model &amp; LoRA libraries.</text> <text x="208" y="187" font-family="Segoe UI, Helvetica, Arial, sans-serif" font-size="19" fill="#a1a1aa">Fast page loads for massive model &amp; LoRA libraries.</text>
<!-- speed pills: before vs after --> <!-- speed pills: page-load experience, before vs after -->
<g transform="translate(208,206)" font-family="Consolas, ui-monospace, monospace" font-size="15" font-weight="600"> <g transform="translate(208,206)" font-family="Consolas, ui-monospace, monospace" font-size="15" font-weight="600">
<rect width="186" height="34" rx="17" fill="#1f1216" stroke="#7f1d1d" stroke-width="1.5"/> <rect width="200" height="34" rx="17" fill="#1f1216" stroke="#7f1d1d" stroke-width="1.5"/>
<text x="93" y="22" fill="#fca5a5" text-anchor="middle">cold build 234 s</text> <text x="100" y="22" fill="#fca5a5" text-anchor="middle">black screen · minutes</text>
<text x="209" y="24" font-size="20" fill="#52525b" text-anchor="middle"></text> <text x="223" y="24" font-size="20" fill="#52525b" text-anchor="middle"></text>
<rect x="232" width="152" height="34" rx="17" fill="#0d1a13" stroke="#166534" stroke-width="1.5"/> <rect x="246" width="186" height="34" rx="17" fill="#0d1a13" stroke="#166534" stroke-width="1.5"/>
<text x="308" y="22" fill="#86efac" text-anchor="middle">cached 4 ms</text> <text x="339" y="22" fill="#86efac" text-anchor="middle">loads in seconds</text>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

+1 -1
View File
@@ -57,7 +57,7 @@
<!-- cache -> Browser (fast HIT) --> <!-- cache -> Browser (fast HIT) -->
<line x1="346" y1="186" x2="224" y2="186" stroke="#34d399" stroke-width="2.5" marker-end="url(#ah-green)"/> <line x1="346" y1="186" x2="224" y2="186" stroke="#34d399" stroke-width="2.5" marker-end="url(#ah-green)"/>
<text x="285" y="204" font-family="Consolas, ui-monospace, monospace" font-size="12.5" font-weight="700" fill="#6ee7b7" text-anchor="middle">HIT · gzip · ~4 ms</text> <text x="285" y="204" font-family="Consolas, ui-monospace, monospace" font-size="12.5" font-weight="700" fill="#6ee7b7" text-anchor="middle">HIT · gzip · cached</text>
<!-- cache -> ComfyUI (miss/refresh, slow, dashed) --> <!-- cache -> ComfyUI (miss/refresh, slow, dashed) -->
<line x1="558" y1="138" x2="682" y2="138" stroke="#71717a" stroke-width="2.5" stroke-dasharray="6 5" marker-end="url(#ah-gray)"/> <line x1="558" y1="138" x2="682" y2="138" stroke="#71717a" stroke-width="2.5" stroke-dasharray="6 5" marker-end="url(#ah-gray)"/>

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB