Previously I was using Tsung to benchmark a new ejabberd system prior to heading into production use and after a lot of digging around I'm starting to get some meaningful data.
Over the weekend the NOC doubled the RAM brining the total amount to 8GB and I'm now able to bench 8000 concurrent connections. Prior to that 4000 was the max safe number with 5000 being the when ejabberd would run out of memory and start to produce fatal errors / crash. However since the server has been tested at +5000 concurrent connections, I'm seeing this error occur in the logs:
=ERROR REPORT==== 2008-02-04 10:07:29 ===
** Generic server <0.12044.0> terminating
** Last message in was {tcp,#Port<0.12082>,
<<21,3,1,0,32,242,19,43,96,0,226,195,234,49,240,
161,26,178,213,102,177,126,169,129,38,178,181,
174,113,193,236,123,133,118,115,185,39>>}
** When Server state == {state,
{tlssock,#Port<0.12082>,#Port<0.12083>},
tls,
none,
<0.12043.0>,
infinity,
{xml_stream_state,
<0.12043.0>,
#Port<0.12084>,
[],
16,
infinity},
infinity}
** Reason for termination ==
** {badarg,[{erlang,port_control,
[#Port<0.12083>,
3,
<<21,3,1,0,32,242,19,43,96,0,226,195,234,49,240,161,26,
178,213,102,177,126,169,129,38,178,181,174,113,193,
236,123,133,118,115,185,39>>]},
{tls,recv_data,2},
{ejabberd_receiver,handle_info,2},
{gen_server,handle_msg,6},
{proc_lib,init_p,5}]}
However I'm still able to connect without problems so I'm wondering if the error should concern me or not. Has anyone seen this before? Also while off topic a bit has anyone find a work around for dealing with memory issues that come from TLS? If I run a non-tls test run I could easily hit 10,000 against the same system.
Re: tls error
I think I'm seeing the same thing. I get the following error around 10 times per day. The only issues that I am aware of are related to s2s presence packets to/from google talk users.