[ejabberd] Really bad performance with ejabberd cluster

Greg greg at easyflirt.com
Fri Oct 19 15:25:12 MSD 2007


Badlop a écrit :
> May the flash hack be problematic? Did you try to run your experiment
> with the stock 1.1.3?
>
> May the problem be in Mysql, or mysql drivers, or ejabberd's
> implementation of mysql storage? You can try an experiment using the
> internal database.
>   
I think it will be significant about messages delivery performance, but 
not about connected users number.
> I guess you know that ERL_MAX_PORTS modifies the Erlang limit of
> ports, but you still need to modify your operating system limit (with
> ulimit -n or whatever).
>   
I do ulimit -n 64000 before starting it.
> Are you sure it is really required for a high-performance server?
>   
I try with and without.
> The -smp Erlang feature is quite recent, did you try disabling it? You
> use Erlang/OTP R11B-2, which is almost a year old. Maybe some features
> (like SMP) were not yet optimized enough at that time.
>   
Yes, i try with and without.
Without, CPU usage is similar but it's more "system" cpu.
> Just curiosity: what software do you use to generate the load? Jabsimul?
>   
Production environnement ... but not really used.
> What system processes use that CPU: 'beam'?
>   
Yes.
> Does that process consumption remain stable all the time during several minutes?
> If 5000 clients try to login almost at the same time, the server will
> obviously become a bottleneck, and eventually will come back to a
> stable state. In the real world, clients do not connect all in just a
> timeframe of 0 seconds: did you try to connect clients in small
> batches?
>   
CPU usage is stable.... at max !
> Are the rosters filled with items, or are empty?
>   
empty. I'm to "connection" step !
> Did you check memory consumption? Maybe there's a bug in ejabberd or
> Erlang/OTP and consumes all it, even if you have so much. Does the
> memory consumption grow at a linear rate with the number of logged
> users in your experiment?
>   
There is a lot of memory available (4GB)
> Did you check disk activity? I guess there shouldn't be at all, since
> all the important data is available in memory.
>   
When log was activated, there was disk activity, but now there's disabled.
> Which benchmarks do you refer to?
> I only remember http://www.ejabberd.im/benchmark
> and it only mentions 3.000 concurrent users with high activity in a
> low-power machine.
>   
Many benchmarks, like this one, which reached 17000 simultaneous 
connexions with a Celeron !
http://www.erlang-consulting.com/thesis/tcp_optimisation/tcp_optimisation.html
> Did you check ejabberd log files (ejabberd.log and sasl.log)? Maybe
> they report some kind of error or warnings that may explain ejabberd
> behavior in your experiment.
>   
Logs are really too verbose... and i don't know what to grep ...

:-/

-- 
Greg



More information about the ejabberd mailing list