[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [Libevent-users] When to use libevent?



Nick wrote:
> Well, Libevent is only a library that provides compatibility across
> different operating systems' asynchronous IO facilities.  As such, it
> is basically never *required* for a new project; you could always
> replace it with direct calls to the underlying OS facilities.  Since
> FUSE is Linux-only, you could probably just write your networking code
> to use epoll or aio and forget about portability layers.

FUSE is available on other Un*x platforms (ie; FreeBSD, OS X), however
the application looks like it might be Linux specific.

While aio is available on many platforms, it doesn't always scale well, or
even support network connections on all of them.

I'd say that the real value of libevent is portability PLUS scalability
(lots of connections on a single server).

If all you want is portability, and you'll only ever handle a small
number of file descriptors, select is sufficient.

P.S.
It's _almost_ enough to make one admit that VMS' "QIO" interface got it right
(for a narrow class of high-performance server applications).
***********************************************************************
To unsubscribe, send an e-mail to majordomo@xxxxxxxxxxxxx with
unsubscribe libevent-users    in the body.