hyper-express: the eight profiles it was missing - #1248
Open
MDA2AV wants to merge 2 commits into
Open
Conversation
static, static-tls, json-tls, async-db, crud, fortunes, api-4 and api-16. The entry carried four endpoints; api-4 and api-16 rotate over /baseline11, /json and /async-db, so wiring Postgres brings all three profiles with it. json-tls and static-tls listen on 8081. hyper-express takes TLS material through the uWS options at construction rather than through a separate https server, so the port is a second Server carrying the same routes - the route table moved into registerRoutes() and both servers are built from it. Every worker binds 8081 the same way they all bind 8080, so the listener is spread across the cluster rather than parked on one process. Static file bodies are read from disk on every request; startup scans names, pre-compressed variants and content types only. crud runs cache-aside on Redis through ioredis, one connection per worker so the cache is shared across the cluster, with a 200ms TTL and an explicit delete on update. fortunes is emitted by hand rather than through a template engine, which tuned mode allows. The handler still queries per request, appends the runtime row, sorts ordinally and escapes < > & " ' - the seed's row 11 carries a <script> tag and the profile's load-bearing check is that it leaves as text. Validation: 64 passed, 0 failed.
Owner
Author
|
/benchmark --save |
Contributor
|
👋 Benchmark request received. A collaborator will review and approve the run. |
Contributor
Benchmark ResultsFramework:
Full log |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
static,static-tls,json-tls,async-db,crud,fortunes,api-4andapi-16. Tests go from 6 to 14.The entry carried four endpoints —
/pipeline,/json/:count,/upload,/baseline11.api-4andapi-16rotate over/baseline11,/jsonand/async-db, so wiring Postgres brings all three profiles with it.json-tls / static-tls
hyper-express takes TLS material through the uWS options at construction rather
than through a separate
httpsserver, so 8081 is a secondServercarrying thesame routes. The route table moved into
registerRoutes()and both servers arebuilt from it — no second copy of the handlers. Every worker binds 8081 exactly
as they all bind 8080, so the listener is spread across the cluster rather than
parked on one process, which is the failure #1245 fixed on quarkus.
static
Bodies are read from disk on every request, per the arena rule that applies in
every mode. Startup scans names, existing pre-compressed variants and content
types only — no file data is held in memory.
crud
Cache-aside on Redis through
ioredis, one connection per worker so the cache isshared across the cluster rather than being a per-worker map, 200ms TTL, explicit
delete on update.
fortunes
Emitted by hand rather than through a template engine, which tuned mode
explicitly allows. The handler still queries per request, appends the runtime
row, sorts ordinally and escapes
<>&"'— the seed's row 11 carriesa
<script>tag and the profile's load-bearing check is that it leaves as text.Validation
64 passed, 0 failed, including every new profile:
🤖 Generated with Claude Code