apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Konstantin Sharenkov" <Konstantin.Sharen...@enterra-inc.com>
Subject RE: Overlapped IO
Date Fri, 03 Mar 2006 11:40:03 GMT
I am not ready to answer all questions completely now.
I plan to implement Event oriented work with sockets for Linux and
Windows soon, After implementation I think I will have enough of
experience with it to be able make more concrete answers.

But I can offer some short answers:

* where would this fit in APR?

I think it should be a separate module like apr_ioevent
It will implement event oriented work with files sockets and pipes.
'Work' means demultiplex the object which need handling.


* what would the API look like?

I think most optimal is 'epoll' variant adaptation for apr

int epoll_create(int maxfds);
int epoll_ctl(int epfd, int op, int fd, unsigned int events);
int epoll_wait(int epfd, struct pollfd *events, int maxevents, int
timeout);

others should be adapted, 


* what benefits does it bring?
Performance improvement for heavy loaded servers, ability to handle
10000+ conections(files) more effective.

See more information at:
http://www.kegel.com/c10k.html


* what's the fallback for platforms that don't implement it?
Other platforms will use POSIX poll() function they and will not receive
additional performance.

Konstantin Sharenkov

PS.
Sorry for my English.

-----Original Message-----
From: Nick Kew [mailto:nick@webthing.com] 
Sent: Friday, March 03, 2006 4:48 PM
To: dev@apr.apache.org
Subject: Re: Overlapped IO

On Friday 03 March 2006 09:53, Konstantin Sharenkov wrote:
> If there are no such plans you may treat my letter as Feature request

How about some more solid proposals:


If you can make a good case for it, and implement it for at least
one platform[1], then maybe we might adopt it.

[1] Especially if it's wndows, as we have lamentably few windows-
hacks on the team.

-- 
Nick Kew


Mime
View raw message