[ejabberd] ejabberd and http-bind - optimization tips

sofia cardita sofiacardita at gmail.com
Fri May 7 16:15:06 MSD 2010


Hi there again,

Repeating the test on another server (rackspace / red hat) with a single
node, I get the same results. The log says:

Slogan: eheap_alloc: Cannot allocate 2850821240 bytes of memory (of type
"old_heap").
System version: Erlang (BEAM) emulator version 5.6.4 [source] [64-bit]
[smp:4] [async-threads:0] [kernel-poll:true]

The 1st time I ran it, I had

Slogan: eheap_alloc: Cannot allocate 2850821240 bytes of memory (of type
"heap").
System version: Erlang (BEAM) emulator version 5.6.4 [source] [64-bit]
[smp:4] [async-threads:0] [kernel-poll:true]

Any ideas?

Thanks,

Sofia

On Fri, May 7, 2010 at 11:33 AM, Milton Moura <miltonmoura at gmail.com> wrote:

> Hi there,
>
> I've been helping Sofia with this setup and I am able to provide you with
> some more info.
>
> We are running a 5 machine ejabberd (v2.0.5) cluster on Amazon EC2, with
> one of the VMs hosting the web chat client with nginx and proxying client
> requests to /http-bind through an Elastic Load Balancer that distributes the
> 5280 load between all 5 VMs, on port 5280.
>
> We have been doing some load tests with browsermob, with a special focus on
> evaluating how many concurrent users we can support on a single muc room
> with this setup.
>
> So far, we have hit a ~60 concurrent user bottleneck on a single room, with
> the following behaviour:
>   - messages are routed with a few seconds delay (5-10 seconds and more, as
> users approach 60+)
>   - new web clients are unable to connect, when hitting these limits
>   - there have been situations when the room "destroys" itself, after some
> minutes of un-responsiveness
>   - these anomalies are witnessed even if we connect to this muc room
> through a typical jabber client to port 5222, like Adium, so I believe we
> can rule out a bottleneck on the HTTP transport
>   - CPU and memory usage on all nodes is very low (most have over 1.1gb ram
> free and cpu load factors are always below 0.1)
>   - when experiencing this slowdown in one room, if we create or join
> another room with very few users via web client or Adium, there is _no_
> latency on messages or joins -- everything behaves as normal
>   - when experiencing the slowdown, if I try to list the available rooms
> via the web admin interface, I get a correct count but the page at
> 'admin/muc/rooms' throws an error
>
> I am led to believe that the bottleneck might be somewhere in the routing
> or queueing code that manages the messages sent to a single muc -- otherwise
> I have no clue what might be the issue here.
>
> Any further suggestions?
>
> Best regards,
> mgcm
>
> On Thu, May 6, 2010 at 3:00 PM, Christopher Zorn <
> christopher.zorn at gmail.com> wrote:
>
>> 2010/5/5 sofia cardita <sofiacardita at gmail.com>
>>
>>> Hi again :)
>>>
>>> What is the best setup for an ejabberd server that only serves through
>>> http? What kind of things should I look out for? Currently we're serving
>>> through nginx and we notice the server gets slower as more clients add up,
>>> even with a small number of clients, eg. 20. This is really bad so what
>>> should be done to avoid this?
>>>
>>>
>> What version of ejabberd are you using? The newest 2.1.x has performance
>> improvements to BOSH.
>>
>> If you have the newest you shouldn't see a slowdown on 20 connections. It
>> could be something else causing the issues.
>>
>> Are you using it for IM or something else? Do you see the same problems
>> with 20 regular connections?
>>
>>
>>
>>> Thanks,
>>>
>>> Sofia Cardita
>>>
>>> _______________________________________________
>>> ejabberd mailing list
>>> ejabberd at jabber.ru
>>> http://lists.jabber.ru/mailman/listinfo/ejabberd
>>>
>>>
>>
>> _______________________________________________
>> ejabberd mailing list
>> ejabberd at jabber.ru
>> http://lists.jabber.ru/mailman/listinfo/ejabberd
>>
>>
>
>
> _______________________________________________
> ejabberd mailing list
> ejabberd at jabber.ru
> http://lists.jabber.ru/mailman/listinfo/ejabberd
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.jabber.ru/pipermail/ejabberd/attachments/20100507/f98a1173/attachment-0001.html>


More information about the ejabberd mailing list