Re: port to twisted

Alex Russell <[email protected]> Sun, 28 Mar 2004 16:15:53 -0800
Newsgroups gmane.comp.web.mod-pubsub.devel
Organization netWindows.org
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Friday 26 March 2004 6:02 pm, George Schlossnagle wrote:
> On Mar 26, 2004, at 7:06 PM, BC Sittler wrote:
> > Just to be sure I understand... there is a kqueue [*bsd] reactor
> > already in twisted, but not one for epoll [linux], right? And
> > Joyce needs one for Linux?
>
> Just fyi, the epoll backport to 2.4 is slightly flaky (will build
> products that exploit that target that patch).  Even without epoll,
> the poll reactor will give you the scalability you need.

I have no doubt that poll() will do the job, but as to whether or not 
poll() will induce high latency with a huge number of long-lived 
clients, I'm not sure:

http://lse.sf.net/epoll/index.html#compare

Solaris added /dev/poll for many of the same reasons that Linux has 
added epoll and FreeBSD kqueue/kevent. It's just another step in the 
research-driven evolution of Unix in general. Select breaks down well 
before poll when faced with lots of connnections, but with 10K active 
clients, it's not unreasonable to expect even poll()'s O(changed FDs) 
performance to get problematic.

>  Either way, adding an epoll reactor should not be terribly 
> difficult though.

Agreed.

Regards

- -- 
Alex Russell
[email protected]   BD10 7AFC 87F6 63F9 1691 83FA 9884 3A15 AFC9 61B7
[email protected] F687 1964 1EF6 453E 9BD0 5148 A15D 1D43 AB92 9A46
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iD8DBQFAZ2q8oV0dQ6uSmkYRApgwAJ97pkcWkAzCz9fvpY8zdvh0BkfQCACgzHJs
Micv7DZCMhbiBCPNlXgaeBM=
=Epow
-----END PGP SIGNATURE-----



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id70&alloc_id638&op=click