]> Sergey Matveev's repositories - public-inbox.git/commit
solver: rewrite to use Qspawn->psgi_qx and pi-httpd.async
authorEric Wong <e@80x24.org>
Tue, 22 Jan 2019 02:10:13 +0000 (02:10 +0000)
committerEric Wong <e@80x24.org>
Sat, 26 Jan 2019 23:57:28 +0000 (23:57 +0000)
commitfffbc9ec32b78731acd30539f6e3f2778d2d1fb2
tree1d24f8afa85cc21cd9ebc4e9dfd6c1769b0769c7
parenta817e10a4f94270d064fee0f18328efb910d9c35
solver: rewrite to use Qspawn->psgi_qx and pi-httpd.async

The psgi_qx routine in the now-abandoned "repobrowse" branch
allows us to break down blob-solving at each process execution
point.  It reuses the Qspawn facility for git-http-backend(1),
allowing us to limit parallel subprocesses independently of Perl
worker count.

This is actually a 2-3% slower a fully-synchronous execution;
but it is fair to other clients as it won't monopolize the server
for hundreds of milliseconds (or even seconds) at a time.
lib/PublicInbox/HTTPD/Async.pm
lib/PublicInbox/SolverGit.pm
lib/PublicInbox/ViewVCS.pm
t/solver_git.t