httpd module vs inets {packet,http}

Ryan Rawson ryanobjc@REDACTED
Wed Mar 8 09:11:38 CET 2006


I didn't like the howto - it seemed like my code would be littered
with http protocol droppings, even though the actual framing is taken
care of by the http packet mode.

I think for me, yaws seems like this whole big thing, and kind of
bothers me - enough to look at alternatives first.

Thanks for the mod_esi pointer.

-ryan

On 3/8/06, Matthias Lang <matthias@REDACTED> wrote:
>
> A "REST" web service seems to be some sort philosophy for how to
> design a service. For the purpose of "how do I do this in Erlang", I
> think it just boils down to "how do I serve dynamically generated web
> pages". If it's not, then my answer probably misses the point.
>
> So: if you just want to serve dynamic web pages, you can choose
> between two ready-made web servers: OTP's httpd and YAWS. Both web
> servers are used in the real world. They have different peformance
> tradeoffs and different approaches to interfacing with 'your'
> application. YAWS seems to be more popular for new applications. If
> you can't make up your mind about which one to use, flip a coin.
>
> The OTP httpd interface you probably want to use is 'mod_esi':
>
>   http://www.erlang.org/doc/doc-5.4.12/lib/inets-4.6.2/doc/html/mod_esi.html
>
> Writing code to use it is straightforward, the hard part is all the
> fudging around with httpd.conf.
>
> If, on the other hand, you want to write your own web server 'from
> scratch', then the undocumented http mode of the packet driver is
> useful. That's what the 'howto' you found is about.
>
> Matthias
>
> --------------------
>
> Ryan Rawson writes:
>  > Hi all,
>  >
>  > I read the 'fast httpd' howto from trapexit.org, and I also looked at
>  > the httpd module in OTS.  I'm a little confused - it seems to me that
>  > the httpd howto doesn't use the httpd module, it uses a undocumented
>  > feature of the packet driver (which may in turn internally use the
>  > httpd module).  While the httpd documentation seems to describe
>  > callbacks but its kind of thinly documented.  Not the end of the
>  > world, but I'm confused - what is the recommended thing to do here?
>  > What do other people do?  Say for example, creating a REST "web
>  > service" ?
>  >
>  > Thanks in advance for any tips and hints.
>  > -ryan
>



More information about the erlang-questions mailing list