|
Boost : |
From: Dave Moore (jdmoore99_at_[hidden])
Date: 2005-12-11 19:18:45
The ACE framework ( http://www.cs.wustl.edu/~schmidt/ACE.html ) is a fairly
well regarded cross-platform communications framework. It is probably best
known for identifying and formalizing many patterns in communications
application design. Some of these, especially the "Proactor" are clearly
visible in the asio design.
Unfortunately, ACE's current implementation is aggresively cross platform
(moreso than boost!), with so many macros that its implementation is barely
recognizable as C++. Also, ACE is still an all-or-nothing proposition, with
no factoring to allow people interested in sockets to skip the pipe
implementations, etc.
When I say "ACE without the cruft", I mean it as a double-edged compliment -
solid design coupled with a clean implementation.
Dave Moore
On 12/11/05, Andrew Schweitzer <a.schweitzer.grps_at_[hidden]> wrote:
>
> I vote to accept asio into Boost.
>
> I don't have a lot of experience with networking, so I give myself only
> 1/5 of a vote. In addition, I have not been able to use asio in
> production-quality, network intensive code. I have used it at home in a
> networked application that depends heavily on timeouts and noticed no
> problems (although I did seem to get exceptions from Boost::DateTime
> after a couple days). It was easy to use.
>
> I will continue to look at it a bit more, but based on a) the lack of
> problems so far and b) my inexperience with this topic I will find
> anything meriting a no vote.
>
> As usual, more documentation would help, in particular overview of
> internal architecture, possibly an expansion of the "Design" page.
> Existing documentation ain't bad. Example code is very easy to follow.
>
> In general, what Dave Moore wrote fits my intuition about asio:
>
> Dave Moore wrote:
> > I vote to accept asio into Boost. I have previously experimented with
> > earlier releases in the asio 1.3.x series. Using asio, I have built
> > proof-of-concept applications that compile on Linux and Win32 handling
> udp
> > multicast traffic at peak rates in excess of 100Mbit/s with low CPU
> > utilization and no packet loss, even when compared with an existing
> > hand-coded production implementation.
>
> [That's very reassuring.]
>
> > Asio represents a serious effort at
> > cross-platform networking by someone who clearly understands the problem
> > domain. I have been representing it to my colleagues as "ACE without
> the
> > cruft."
>
> [That's my sense too. In particular I did not have to wrap anything with
> ACE stuff.... What exactly is "cruft" and Dave do you mind elaborating
> on this point?]
>
> [snipped rest]
>
> >
> >
> > David Moore
> > _______________________________________________
> > Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
> >
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk