aboutsummaryrefslogtreecommitdiffstats
path: root/prototypes/connections/test-async-server-gate.c
diff options
context:
space:
mode:
authoreunhhu <[email protected]>2026-09-26 04:53:55 +0100
committereunhhu <[email protected]>2026-09-26 04:53:55 +0100
commit3b89ae82ea9468d54c60a63fd03b9a829748a0ac (patch)
tree2e5038f1f76e313960a5ef61a200c8642417af18 /prototypes/connections/test-async-server-gate.c
parent517d5cf263bdbea232186636ce99e7c3be15d00f (diff)
downloadpure-3b89ae82ea9468d54c60a63fd03b9a829748a0ac.tar.gz
pure-3b89ae82ea9468d54c60a63fd03b9a829748a0ac.zip
Serve modules through the runtime core with group commits
pure-connections-module offers the document server's HTTP contract with an aup module: GET is its show message and PUT its edit message. Requests go through the runtime core as before (work slots, payload budget, ingress, replies borrowed from the request), and effects are taken on the owner thread with the core's asynchronous interface. Each poll round is one burst: every ready request is applied to the app with deferred saving, one save stores them, and only then are the tickets completed and answered. A failed save fails the whole burst, reads too. A key seen again ends the burst first, and the module server accepts every waiting connection at once so concurrent requests share a burst. On the Pi's SD card eight clients' 240 edits take 0.59 s instead of 2.14 s.
Diffstat (limited to 'prototypes/connections/test-async-server-gate.c')
0 files changed, 0 insertions, 0 deletions