24 lines
No EOL
987 B
Text
24 lines
No EOL
987 B
Text
This is the PSGI branch of WebGUI8
|
|
|
|
Currently, the best performance is achieved via:
|
|
|
|
plackup -E none -s Starman --workers 10 --disable-keepalive
|
|
|
|
You can benchmark your server via:
|
|
|
|
ab -t 3 -c 10 -k http://dev.localhost.localdomain:5000/ | grep Req
|
|
|
|
I'm currently getting 23 requests/second, whereas I'm getting 30/second on the non-PSGI WebGUI8 branch.
|
|
|
|
= ARCHITECTURE =
|
|
|
|
* The .psgi file gets to set WEBGUI_ROOT and WEBGUI_CONFIG.
|
|
* It instantiates the $wg WebGUI object (one per app).
|
|
* $wg creates and stores the WebGUI::Config (one per app)
|
|
* $wg creates the $app PSGI app code ref (one per app)
|
|
* WebGUI::Middleware::Session is wrapped around $app at the outer-most layer so that it can open and
|
|
close the $session WebGUI::Session. Any other wG middleware that needs $session should go in between
|
|
it and $app ($session created one per request)
|
|
* $session creates the $request WebGUI::Session::Request and $response WebGUI::Session::Response
|
|
objects (one per request)
|
|
|