For general serving needs I would definitely stick with Apache.
I've got a few custom web servers that utilize HTTP::Daemon. I've been quite happy with the results. They deal with specific types of http requests and nothing else. Separating them from Apache gives me a lot of latitude as far as installation and configuration. Looking at my instances, they have a much smaller footprint than my Apache (which is on the lean side to begin with.)
It's also trivial to install them elsewhere in case of emergencies (like the phone company cutting through a fiber and taking out most of the connectivity in Boston)
-Lee
"To be civilized is to deny one's nature."