[jadmin] Maximum concurrent users on one jabberd

Thomas Muldowney temas at box5.net
Thu Mar 29 13:02:34 CST 2001


Select becomes sluggish on the file sets very very quickly.  I haven't tested
higher FD counts than 1024 on linux 2.4, but that's not the only issue.  Select
was chosen as a base common denominator, and it has pth support.  Unfortunately
my MIO hacks don't work, but I'm making a pluggable front end now.  I have it
mostly working, pretty exciting stuff.  Expect to see patches soon.

--temas

On Tue, Mar 27, 2001 at 09:46:27AM -0600, Dustin Puryear wrote:
> Dustin Puryear wrote:
> > 
> > Thomas Muldowney wrote:
> > >
> > > Hey all, yeah this is an annoying problem with linux and select.  Select in
> > > general is a poor function for high load systems.  The piece that I'm working
> > > on is a fix to the MIO layer that allows the backend to be changed to a more
> > > powerful system easily.  I'm almost done ripping it apart.  I hope that when
> > > I go to drop it in cvs I'll have select, poll, and devpoll available for use.
> > >
> > > I'll probably put a patch on jdev to get help testing it.
> > 
> > I am confused how this is a select() issue. Isn't this just a default
> > configuration limitation with Linux, and can be changed (painfully) in
> 
> You know what, it is a select() issue. I upped the limits and can
> successfully open 4096 files. However, select() fails. I then found that
> FD_SETSIZE is set to 1024! Not to sound too simple, but can I just
> increase this limit without breaking Linux 2.2? Has anyone experimented
> with this? Also, I've heard that 2.4 does away with this issue. Is that
> true? We may try an install this week to see if 2.4 works better with a
> high-load Jabber service.
> 
> Regards, Dustin
> 
> > 2.2 and (not so painfully) in 2.4? You can easily hit the limit by
> > running simple test code:
> > 
> > #include <stdio.h>
> > 
> > #include <sys/types.h>
> > #include <sys/stat.h>
> > #include <fcntl.h>
> > 
> > int main(void)
> > {
> >         int i;
> >         int is_done;
> > 
> >         i = 0;
> >         is_done = 0;
> >         while (!is_done)
> >         {
> >                 if (open(tmpnam(NULL), O_CREAT) < 0)
> >                 {
> >                         printf("fail at index %d\n", i);
> >                         is_done = 1;
> >                 }
> >                 else
> >                 {
> >                         printf("created file %d\n", i);
> >                         i++;
> >                 }
> >         }
> > 
> >         return 0;
> > }
> > 
> > This fails at index 1021 under Linux 2.2 for me. Allowing for stdin,
> > stdout, and stderr that is 1024 open files.
> > 
> > Regards, Dustin
> > 
> > >
> > > --temas
> > >
> > > On Mon, Mar 26, 2001 at 06:42:41PM +0200, Stefan Praszalowicz wrote:
> > > > > Since we couldn't wait for this new front end
> > > > > to appear, our solution was to upgrade Jabber.com
> > > > > to the Jabber Commercial Server which at that
> > > > > time was just about to be released.
> > > > >
> > > >
> > > >
> > > > What does that mean ?
> > > > How does the commercial server get around this problem ? I suppose you
> > > > have
> > > > to split connections in sub-pools wich can be select()ed separately...
> > > >
> > > > Does the CVS version of jabber do that ?
> > > >
> > > >
> > > > _______________________________________________
> > > > jadmin mailing list
> > > > jadmin at jabber.org
> > > > http://mailman.jabber.org/listinfo/jadmin
> > >
> > >   ------------------------------------------------------------------------
> > >    Part 1.2Type: application/pgp-signature
> > 
> > --
> > Dustin Puryear <dpuryear at usa.net>
> > http://members.telocity.com/~dpuryear
> > In the beginning the Universe was created.
> > This has been widely regarded as a bad move. - Douglas Adams
> > 
> > _______________________________________________
> > jadmin mailing list
> > jadmin at jabber.org
> > http://mailman.jabber.org/listinfo/jadmin
> 
> -- 
> Dustin Puryear <dpuryear at usa.net>
> http://members.telocity.com/~dpuryear
> In the beginning the Universe was created. 
> This has been widely regarded as a bad move. - Douglas Adams
> 
> _______________________________________________
> jadmin mailing list
> jadmin at jabber.org
> http://mailman.jabber.org/listinfo/jadmin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
URL: <http://mail.jabber.org/pipermail/jadmin/attachments/20010329/c4e3f55a/attachment-0005.pgp>


More information about the JAdmin mailing list