in reply to Re: Time to write a "serious" http server in Perl?
in thread Time to write a "serious" http server in Perl?

Running a proxy in front of mod_perl has long been the recommended configuration.

Firstly, I hate mod_perl; and, I don't use Apache. Though for a long time I used both of them. With that said, mod_perl is not recommended by anyone who uses it and knows of its "alternatives." Again: If you use mod_perl it is not a recommended solution.. It is the *only* solution. There isn't a single non-contrived use case of mod_perl where fastcgi can be used, in which FastCGI shouldn't be used. FastCGI is a platform agnostic way to write web pages with your favorite scripting language. It requires no linking, and offers a clear separation of the web-server logic, and the web site logic. Conversely, mod_perl is a way to write Apache modules in perl.. These are two totally different tasks. Instructing people to write web sites using mod_perl, is akin to instructing them to write gui's in kernel space using frame buffers.



Evan Carroll
I hack for the ladies.
www.EvanCarroll.com
  • Comment on Re^2: Time to write a "serious" http server in Perl?

Replies are listed 'Best First'.
Re^3: Time to write a "serious" http server in Perl?
by mr_mischief (Monsignor) on Aug 13, 2008 at 19:27 UTC
    No matter your dynamic page toolkit, whether it's mod_perl, FastCGI, plain CGI, or some fully custom web server written in whatever language, a reverse proxy that caches dynamic pages to static ones will accomplish the same thing. The load of generating the same dynamic page over and over on a highly trafficked server will be reduced to one dynamic request and a bunch of static ones, with a new dynamic page generated only every so often.
Re^3: Time to write a "serious" http server in Perl?
by jdrago_999 (Hermit) on Aug 12, 2008 at 15:37 UTC
    A couple years ago I would have flamed you. Now I am in agreement.

    It seems to me that mod_perl is a great way to hack out something slick - i.e. when mod_rewrite doesn't quite cut it, use a PerlTransHandler to change $r->uri() to another value based on what your database says (or whatever).

    Another case of "Just because you can do X doesn't mean you should do X."

    ...I suppose you could apply the same argument to writing an http server in Perl.