Mojo::S...r::Morbo(3)
π Mojo::Server::Morbo(3) β the group chat version
ok so this is Mojo::Server::Morbo(3), from the User Contributed Perl Documentation collection (yes bestie, the perl v5.42.0 docs, we're fancy now), and it is exactly as dramatic as the name suggests. Buckle up π
πΈ NAME πΈ
Mojo::Server::Morbo β Tonight at 11...DOOOOOOOOOOOOOOOM! ππ₯
like that's literally the official name, I didn't make it up, they really wrote that in the docs. iconic behavior honestly π
β¨ SYNOPSIS β¨
use Mojo::Server::Morbo;
my $morbo = Mojo::Server::Morbo->new;
$morbo->run('/home/sri/myapp.pl');
that's it, that's the whole vibe. new it up, run your app, slay π
π¦ DESCRIPTION π¦
okay so Mojo::Server::Morbo is a full featured, self-restart capable, non-blocking I/O HTTP and WebSocket server. it's built around the very well tested and reliable Mojo::Server::Daemon, so you're standing on solid ground, no cap π«Ά
and the feature list?? it's giving main character energy:
- IPv6 π
- TLS π₯
- SNI π
- UNIX domain socket π§
- Comet (long polling) β
- keep-alive π
- multiple event loop support π
β οΈ heads up bestie: this server uses signals for process management, so you should avoid modifying signal handlers in your applications. like, don't touch them. fr fr π
to actually start applications with it, you use the morbo script:
$ morbo ./myapp.pl
Web application available at http://127.0.0.1:3000
and now the good part β for better scalability (epoll, kqueue) and to provide non-blocking name resolution, SOCKS5 as well as TLS support, these optional modules will be used automatically if possible:
EV(4.32+)Net::DNS::Native(0.15+)IO::Socket::Socks(0.64+)IO::Socket::SSL(2.009+)
and if you're feeling picky, individual features can also be disabled with the MOJO_NO_NNR, MOJO_NO_SOCKS and MOJO_NO_TLS environment variables π
see "DEPLOYMENT" in Mojolicious::Guides::Cookbook for more β iykyk π
π SIGNALS π
the Mojo::Server::Morbo process can be controlled at runtime with the following signals. yes, at runtime, like live, mid-vibe π¦
INT, TERM
Shut down server immediately. β‘
π ATTRIBUTES π
Mojo::Server::Morbo implements the following attributes. all of them. every single one. we're not skipping anything, bestie πΈ
backend
my $backend = $morbo->backend;
$morbo = $morbo->backend(Mojo::Server::Morbo::Backend::Poll->new);
Backend, usually a Mojo::Server::Morbo::Backend::Poll object. it's the behind-the-scenes girlie making it all work π
daemon
my $daemon = $morbo->daemon;
$morbo = $morbo->daemon(Mojo::Server::Daemon->new);
the Mojo::Server::Daemon object this server manages. your fave reliable little worker bee π
silent
my $bool = $morbo->silent;
$morbo = $morbo->silent($bool);
Disable console messages, defaults to a true value. so yes, it's quiet by default β dramatic queen who doesn't need to announce herself β¨
π₯ METHODS π₯
Mojo::Server::Morbo inherits all methods from Mojo::Base and implements the following new ones. only one new one, but it's a banger π
run
$morbo->run('script/my_app');
Run server for application and wait for "SIGNALS". that's the whole method. it runs, it waits, it serves. periodt π
π SEE ALSO π
MojoliciousMojolicious::Guides- <https://mojolicious.org>
go read them, they're literally right there π«Ά
and that's the page, bestie! this one shipped with perl v5.42.0 and got stamped 2026-07-15, so if you're reading it any other time... time travel?? no idea, i don't make the rules ππ bye slay stay safe and don't touch your signal handlers π
π¦ where this page comes from
- opensuse-leap 16.0: perl-Mojolicious 9.480.0-bp160.2.1 Β· Artistic-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms