Plack:...Feersum(3pm)

πŸ’– Plack::Handler::Feersum β€” the tea β˜•

okay bestie, sit down, hydrate, because we're talking about Plack::Handler::Feersum β€” literally the plack adapter for Feersum. that's the whole vibe. it's the lil glue guy that lets Feersum hang out with Plack. no cap. 🫢


✨ SYNOPSIS ✨

the way you just run it:

plackup -s Feersum app.psgi
plackup -s Feersum --listen localhost:8080 app.psgi
plackup -s Feersum --pre-fork=4 -MMy::App -L delayed app.psgi

look at her go. πŸ’…


🌸 DESCRIPTION 🌸

so here's the situation. this is a stub module β€” meaning its whole job is to let Feersum be loaded up under plackup and other Plack tools. that's it. that's the mission. iconic behavior honestly. πŸŽ€

to actually make it happen you have two options, pick your fighter:

  • set $ENV{PLACK_SERVER} to 'Feersum', or
  • use the -s parameter on plackup

either way, that's how you get Feersum running under Plack. easy peasy. ✨

πŸ§ͺ Experimental Features πŸ§ͺ

heads up bestie, this part is experimental β€” tread lightly. πŸ™ˆ

you can pass a --pre-fork=N parameter to put feersum into pre-forked mode, where N is the number of child processes. multitasking queen. πŸ‘‘

BUT β€” and this is important β€” the --preload-app parameter that Starlet supports isn't supported yet. so don't come for her about it, she's working on it. 😭

also the fork is run immediately after startup and after the app is loaded β€” i.e. inside the run() method. timing is everything, fr fr. ⏰


πŸ¦‹ METHODS πŸ¦‹

  • assign_request_handler($app) β€” assigns the PSGI request handler to Feersum. and get this, she also sets up a SIGTERM handler that calls the quit() method, so that Plack::Loader::Restarter will work. considerate AND functional. we love a multi-hyphenate. πŸ’–

πŸ‘€ SEE ALSO πŸ‘€

most of the actual functionality lives in Feersum::Runner (which is the base class, iykyk). she's the main character, this module is just her publicist. πŸ’…


πŸ’œ AUTHOR πŸ’œ

Jeremy Stashewsky, "stash@cpan.org" β€” shoutout to the legend. 🌟


Copyright (C) 2010 by Jeremy Stashewsky & Socialtext Inc.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available.


legal bestie moment: it's free software, same terms as Perl itself, 5.8.7 or later β€” your call. 🫢

and that's the whole page! this was brought to you by perl v5.40.1, dated 2025-04-13, for Plack:...Feersum(3pm). slay, go build something cute. πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from