문제

I'm trying to test the capabilities of the Tigase XMPP server 5.2.0.

I'm running tests with tsung 1.4.2 to reach 20K users connected (once 20K works, I'll try to check it with 150K). The tigase crashes after around 6000 connections. Someone can help me please to find out the problem?

Details: The parameters of the tsung is: (12 connection per sec, 1666 sec for connection = 20K users)

<?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd">
<tsung loglevel="notice" version="1.0">

  <clients>
    <client host="localhost" use_controller_vm="true" maxusers="50000"></client>
  </clients>

  <!-- Server side setup -->
 <servers>
  <server host="server_ip" port="5222" type="tcp"></server>
 </servers>

  <load>
   <arrivalphase phase="1" duration="2000" unit="minute">
   <users interarrival="0.08" unit="second"></users>
   </arrivalphase>
  </load>

  <!-- JABBER parameters -->
  <!-- to synchronise users,  use a global acknoledgement -->
 <options>
  <option type="ts_jabber" name="global_number" value="30000"></option>
  <option type="ts_jabber" name="userid_max" value="20000"></option>
  <option type="ts_jabber" name="domain" value="my_domain"></option>
  <option type="ts_jabber" name="username" value="user"></option>
  <option type="ts_jabber" name="passwd" value="pass"></option>
 </options>

  <sessions>
   <session probability="100" name="jabber-example" type="ts_jabber">

    <request> <jabber type="connect" ack="no_ack"></jabber> </request>
    <thinktime value="2"></thinktime>

    <transaction name="authenticate">
      <request> <jabber type="auth_get" ack="local"></jabber> </request>
      <request> <jabber type="auth_set_plain" ack="local"></jabber> </request>
    </transaction>

    <request> <jabber type="presence:initial" ack="no_ack"/> </request>
    <thinktime value="2"></thinktime>

    <transaction name="roster">
      <request> <jabber type="iq:roster:get" ack="local"></jabber></request>
    </transaction>

    <thinktime value="2"></thinktime>

    <transaction name="online">
    <request> <jabber type="chat" ack="no_ack" size="16" destination="online"></jabber> </request>
    </transaction>

    <thinktime value="1666"></thinktime>

    <transaction name="close">
      <request> <jabber type="close" ack="no_ack"></jabber> </request>
    </transaction>

  </session>


 </sessions>
</tsung>

In the tigase the parameters are: (init.properties)

config-type=--gen-config-def
--admins=admin@my_domain
--virt-hosts = my_domain

--user-db=mysql
--user-db-uri=jdbc:mysql://mysql_ip:3306/tigasedb?user=user&password=password&useUnicode=true&characterEncoding=UTF-8&autoCreateUser=true

tigase.conf:

ENC="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
DRV="-Djdbc.drivers=com.mysql.jdbc.Driver:org.postgresql.Driver:org.apache.derby.jdbc.EmbeddedDriver"
#GC="-XX:+UseBiasedLocking -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:ParallelCMSThreads=2 -XX:-ReduceInitialCardMarks"
#EX="-XX:+OptimizeStringConcat -XX:+DoEscapeAnalysis -XX:+UseNUMA"
JAVA_HOME="/usr/lib64/jvm/java-1.6.0-openjdk"
CLASSPATH=""
JAVA_OPTIONS="${GC} ${EX} ${ENC} ${DRV} -server -Xms100M -Xmx200M -XX:PermSize=32m -XX:MaxPermSize=256m -XX:MaxDirectMemorySize=128m "
TIGASE_CONFIG="etc/tigase.xml"
TIGASE_OPTIONS=" --property-file etc/init.properties "
도움이 되었습니까?

해결책

Memory settings for JVM are too low. Your installation probably crashes because of OOM.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top