tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: libbozohttpd and lua



On Fri Nov 06 2009 at 07:12:27 +0000, Alistair Crooks wrote:
> Just to add some fuel to the fires...
> 
> I have need of a webserver that can embedded in other things.  I've
> taken bozohttpd, and split it into libbozohttpd and a main.c (a short
> driver program).  The embedded version still has one iffy bit - the
> current way of interrupting output which is taking too long is to have
> an alarm(3) raised.  This doesn't scale, and won't embed well.  At the
> same time, this raises questions about the whole way of architecting
> an embedded server, whilst keeping the small, simple nature of
> bozohttpd intact.

What is a driver program?  Like inetd (which bozo used to require)?

Your problem sounds like a case for threads or non-blocking handles
which needs to be massaged from the driver until data has been sent.
But I guess you don't want to do it that way?

> I've also rewritten the driver program as a small lua script (and some
> supporting C glue). The lua script is < 160 lines and that includes
> license and comments, and all of the options httpd(8) supports.
> Feedback on that is solicited and will be gratefully received.

Sounds cool.  I'm soliciting comparison data which has been a little
hard to find on this subject.  The obvious ones are:
* how big is main.c
* how big is the C glue
* how does it perform (apachebench should do the trick?)

And the "86 developers out of 100 prefer X to the leading brand"
subjective metric:
* do you consider the lua version significantly easier/better (keeping
  in mind you have to write the C glue and maintain it)

(don't have a terminal for easy targz viewing currently)


Home | Main Index | Thread Index | Old Index