Re: jabberd2 questions?
"Christopher Zorn" <[email protected]>
| Newsgroups | gmane.network.jabber.admin |
|---|---|
| Message-ID | <[email protected]> |
On Fri, Aug 29, 2008 at 9:36 AM, Derek Taylor <[email protected]> wrote: > On Thu, 28 Aug 2008, Jack Moffitt wrote: > >> I am trying to find out if Jabberd2 Server can support 3000 concurrent > >> users. Does anybody know or has done any testing to find out how many > >> concurrent users can Jabberd2 support? > > > >I imagine this is possible, but latency from the database load is > >likely going to make it not so great. > > The database doesn't need to be on the same machine as the jabberd2 > processes. We're using a MySQL cluster and believe that this will > hopefully be enough to serve ~10000, but we're still in a pilot phase. > No it doesn't but jabberd2 blocks on db and produces latency no matter where your database is, the faster the database the better, but the more people you get the harder this is, especially when stanza traffic goes up. > > According to Simon Yeo, jabberd2 has been used to serve 15k users > successfully[1]. Our installation has a similar distribution among > servers. > I tested with jab_simul before and it does not come close to real world stuff. A setup I had tested with 2k users and some traffic did not show any problems, but once people started using it, there was a different story. You would need to use another testing mechanism. As Jack said, you can scale c2s and handle lots of simultaneous users, but once they use sm it becomes a problem. So handling users connected is fine but handling lots of traffic from them is not. A nice fix would allow people to run multiple session managers and then jabberd2 would be real nice. > > >> If it cannot support so many users what are the issues due to which it > >> cannot scale? What part of the Jabberd2 core needs to be fixed in order > >> for it to scale? > > > >The limiting factor j2 scalability is the session manager (sm) > >component. While you can spread the server components out over > >multiple machines and run multiple copies of some components (like > >c2s), sm cannot be distributed at all. A single machine must be able > >to handle all the sessions of the server. > > > >Also, there are several memory leaks in the session manager that > >affected us severely at Chesspark. We had to restart the session > >manager (and thus the entire server) about once every two weeks, even > >with only a few hundred simultaneous users. I'm not sure if the leak > >is exacerbated by our particular usage patterns, but I can't imagine > >how often you'd need to restart for 3,000 simultaneous users. > > > >In addition, if you are using relational database storage as the > >backend, even light use of the database can cause noticably packet > >latency since the non-blocking server design of j2 is marred by the > >blocking database calls. Also, j2 only uses a single database > >connection instead of a connection pool. > > > >If you plan to scale j2, you will need to implement some kind of > >database pooling and find and fix the memory leaks if they affect your > >usage patterns. I'm sure that with these issues fixed, the j2 session > >manager could handle 3,000 simultaneous users. Perhaps you'd have to > >add in some memcache to the mix, but that is fairly trivial compared > >to the other tasks. > > > >Bottom line, if I was a consultant and you were my client, I would be > >steering you away from jabberd2 and onto something different. Since > >my server administration experience has been mainly with jabberd2, I > >do not have an alternative suggestion for you, except to say that > >we've migrated to ejabberd at Chesspark and have been very happy with > >it over the last week. > > We have not yet run into the memory leak, for whatever reason, but we've > only been serving ~50 simultaneous users so far during the pilot. > > Your experience worries me. > > >jack. > > -Derek. > > [1] > <http://mailman.jabber.org/pipermail/jadmin/2006-September/098513.html> > _______________________________________________ > JAdmin mailing list > FAQ: http://www.jabber.org/discussion-lists/jadmin-faq > Forum: http://www.jabberforum.org/forumdisplay.php?f=19 > Info: http://mail.jabber.org/mailman/listinfo/jadmin > Unsubscribe: [email protected] > _______________________________________________ > _______________________________________________ JAdmin mailing list FAQ: http://www.jabber.org/discussion-lists/jadmin-faq Forum: http://www.jabberforum.org/forumdisplay.php?f=19 Info: http://mail.jabber.org/mailman/listinfo/jadmin Unsubscribe: [email protected] _______________________________________________