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

Re: [Libevent-users] FD_SETSIZE - max connections in Windows - help!



Nick,

Thank you so much for your reply! At least now we're not looking in the wrong place. Have you or others you know of ever come across any limitations in general on windows?

Regards,

Patrick

Nick Mathewson wrote:
On Mon, Mar 15, 2010 at 12:03 PM, Patrick Galbraith <patg@xxxxxxxx> wrote:
Hi all,

We have hit a brick wall with memcached - namely max connections with
select.

Namely, select from libvent use by memcached on windows, according to the
documentation from MSDN you need to
set FD_SETSIZE to the maximum number of sockets to use. By default
FD_SETSIZE
== 64. We set FD_SETSIZE to 2048 in  win32select.c at the top prior to
including winsock2.h, but still no success. It seems to fail at 41
connections.

I'm not sure why you're seeing this 41-connections issue, but I don't
think it has anything to do with FD_SETSIZE.  FD_SETSIZE affects the
declared size of the fd_set structure that select() uses.  But
Libevent doesn't believe the size of fd_set from the winsock2.h
header; instead, it allocates its own.  Look at the code for
FD_SET_ALLOC_SIZE.

(For me, win32select doesn't top out at 41 connections.  It can handle
hundreds or thousands of connections easily, though the scaling gets
poor with thousands.)

yrs,

***********************************************************************
To unsubscribe, send an e-mail to majordomo@xxxxxxxxxxxxx with
unsubscribe libevent-users    in the body.