|
Boost : |
Subject: Re: [boost] [GSoC 2014] Http Server Proposal
From: Bjorn Reese (breese_at_[hidden])
Date: 2014-03-06 06:23:58
On 03/01/2014 02:06 AM, Vinícius dos Santos Oliveira wrote:
> I'm interested in develop an asynchronous HTTP server for Boost as part
> of GSoC.
I think that this would be a good project, and you look like a capable
candidate judging from your descriptions and your Tufao project. A
reference to other readers:
https://github.com/vinipsmaker/tufao
The two leading contenders for C++ HTTP servers based on Boost.Asio are
Pion and cpp-netlib, and you should investigate them:
https://github.com/cloudmeter/pion
http://cpp-netlib.org/
Back in 2008 there was talk about merging these libraries into a
Boost.Network proposal, but I do not know what happened to these
efforts.
> The library would be modular to the point where you can use only small
> parts of it and you could also replace components that you don't like.
This is a very sound design principle. Two obvious candidates for
independent components are HTTP and URL parsing/generation.
As the HTTP component would have to handle HTTP/1.1 chunking and
WebSockets, it may be an idea to design it as a streaming parser as
it provides a unified interface for all HTTP artifacts, including
the live video streaming that you mention. Another use case to
consider is the UPnP HTTPU (HTTP over UDP.)
Concerning the URL parser/generator, an URI library has been proposed
for the C++ standard:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3625.html
> to things that I know it will work long-term. If the implementation
> project end up being too small, I can also implement WebSocket support
I would worry more about it becoming too large ;-)
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk