NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.
All the Perl that's Practical to Extract and Report
Stories, comments, journals, and other submissions on use Perl; are Copyright 1998-2006, their respective owners.
lighttpd? (Score:1)
Re:lighttpd? (Score:2)
Say you want to build an app - you don't want to fuss about deployment just yet. With this you can just download it, and run "./axkit" and start building your app. No downloading extra httpds and configuring them.
When you want to deploy, you can either deploy standalone like this without an extra httpd, or you can stick lighttpd or apache up front, giving you whatever extra features you might need from those (e.g. SSL).
All this is easier to debug than FastCGI, and can utilise proxy caching at the
Re:lighttpd? (Score:1)
It sounds to me like you're solving a different problem -- how to have a quick dev server. Most projects are doing this with HTTP::Server::Simple. I personally think it's a bad idea to develop on a server that isn't identical to what you deploy on,
Re:lighttpd? (Score:1)
Why is it appreciably harder to write a good dæmon vs. a FastCGI frontend? That doesn’t make any sense to me.
Re:lighttpd? (Score:1)
Re:lighttpd? (Score:1)
So what you’re objecting to is not any of the stated goals, but just the fact that it would require effort that cannot build on something existing?
Re:lighttpd? (Score:1)
In the article, Davidson complains about "zombies, mysterious crashes, and other annoyances" -- sort of like the kind you see when you try to write a new networkd server. He complains that you
Re:lighttpd? (Score:1)
I don’t see how database server binary protocols are in any way a relevant example. They are closed proprietary wire formats, they have a single implementation for each end of the wire, and the code for both ends is written by the same entity. Noone expects the client library of MySQL to interoperate with the PostgreSQL server, yet people fully expect to be able to run the same FastCGI-fronted application under lighttpd, multiple different FastCGI implementations for Apache, and who knows what else.
When I look at the issue I see the same as Matt – the FastCGI protocol is just a gratuitous extra spec unnecessarily involved in serving. I really don’t see how a process speaking FastCGI to another process, which as you correctly say has to deal with all the vagaries of typical dæmons, is fundamentally simpler than a process speaking HTTP to another process – other than that the latter case enables scenarios that the former precludes. There is no conceptual difference, only the fact that a passable implementation of FastCGI exists and of HTTP doesn’t.
I say if someone puts in the work, more power to them. They’ll have my gratitude.
Reply to This
Parent