[ic] Running Interchange 5 with Plack
Jon Jensen
jon at endpoint.com
Fri Sep 11 13:24:51 UTC 2015
On Thu, 10 Sep 2015, Sam Batschelet wrote:
> I wanted to share my research on running Interchange 5 with Plack.
> Recently a lot of my development has been with Dancer and the preferred
> stack is typically something like Nginx, Plack and Starman. After
> listening to a few people looking for alternatives to Apache and
> reluctancy to use Nginx with FastCGI with Interchange. I wondered would
> it be possible to run Interchange 5 in a NPS stack. I started
> researching existing modules and came across Plack::App::CGIBin written
> by Tatsuhiko Miyagawa. To my delight my first test with the example in
> the POD had Interchange with a c compiled cgi-file running on Plack!
Very cool, Sam! It's about time someone tried that.
I'm really surprised that Plack will work with a compiled C binary. You're
positive you weren't somehow running the Perl vlink.pl instead? If they're
in the same directory I would be suspicious that Plack::App::CGIBin is
getting fancy inferring the .pl suffix or something.
> Also consider how much closer this puts your env to Dancer and how IC5
> and Dancer might be able to work together.
Yeah, it would be nice to have them in a single daemon the web server can
HTTP proxy to. That is a much more standard stack these days that
sysadmins know how to work with.
> Perhaps a cleaner Plack solution to Interchange is in the future?
I've long wanted to adapt Interchange 5 to run inside a Plack/PSGI daemon
like I did for mod_perl back in 2002:
https://github.com/interchange/interchange/commit/4c19058b
That hasn't been updated for mod_perl 2, and turned out to be less useful
than I hoped because in order to avoid bloating all your Apache processes,
you needed to run a separate Apache daemon just for Interchange. But it
did run well in production for one of our busy clients for several years.
It'd be much nicer to have Plack/PSGI playing that role instead of Apache
mod_perl!
Jon
--
Jon Jensen
End Point Corporation
https://www.endpoint.com/
More information about the interchange-users
mailing list