jamal wrote:
Is libevent trying to be too many things? I love the
all-things-IO libevent provides; i guess buffer events are a natural
evolution path - but why all the DNS or HTTP stuff?
The DNS and HTTP stuff is there so people don't have to constantly
re-invent those tasks themselves. How often do you connect to a remote
host without doing DNS lookups? From another perspective, another
completely different library for asynchronous I/O - Boost.Asio - also
provides asynchronous resolver functions, because the author of that
library had pretty much exactly the same conclusion.
For HTTP... well, the doxygen on the subject seems pretty
self-explanatory: "As libevent is a library for dealing with event
notification and most interesting applications are networked today, I
have often found the need to write HTTP code. The following prototypes
and definitions provide an application with a minimal interface for
making HTTP requests and for creating a very simple HTTP server."
The server software I've written that *didn't* include an embedded web
server for management was being moved in that direction to meet the
needs of the operational staff; it's just part and parcel of servers
these days. Right now I'm using Boost.Asio instead of libevent
(probably better if you're working in C++, but not an option in C), but
because of that I'm having to do work that libevent provides out of the box.
whats next?
What other protocols or services are commonly required by virtually
every client, or virtually every server?
Is the end goal to become the one stop shop for all protocols
(like python twisted)?
I think the end goal is to be a useful library for writing clients and
servers that want to do I/O asynchronously.
I know i dont have to use or compile all the goodies, but
would it not make more sense to keep the protocol processing
engines as a separate library that uses libevent (or for
that matter whatever the competition is)?
It could make sense, but what is the benefit to the separation? How
many people using libevent will never use evdns or evhttp?
--
Matthew Weigel
hacker
unique & idempot . ent
_______________________________________________
Libevent-users mailing list
Libevent-users@monkey.org
http://monkeymail.org/mailman/listinfo/libevent-users