The limit is 1024 here. I'm using faban 1.0 . I imagine that concurrent users from the workload is directly related to that. The value is 25 for concurrent users. The thing is that database is loaded for 100 concurrent users. I want to start low, then I'll stress the SUT with 100 concurrent users. Is that a wrong choice?
*A. For a successful faban run it goes like this:* 1. During ramp up, the number of sockets in use jumps high with lines like this from netstat: *tcp6 0 0 kamet:40197 k2:3002 TIME_WAIT* It is weird that netstat reports a tcp6 socket. Although server is not using ipv6 addresses 2. Then, during steady state, it gets even higher: *# netstat -a | wc -l 14854* And the most of sockets are in TIME_WAIT state (that's weird for me) 3. The ramp down is configured to last 60 sec. And results are OK 4. After ramp down there still are some waiting sockets. And then, they'll "fade away" *B. But if I start another run right after a successful one, the "java.net.SocketException: Too many open files" problem happens.* *C. So, I have to wait a couple of minutes to start another run and then it will go fine.* *D. Here is "run configuration":* <olio> - <jvmConfig> <javaHome>/usr/lib/jvm/java-6-openjdk</javaHome> <jvmOptions>-Xmx1g -Xms256m -XX:+DisableExplicitGC</jvmOptions> </jvmConfig> - <fa:runConfig definition="org.apache.olio.workload.driver.UIDriver"> <fh:description>MAKALU standalone webroar (400 seg)</fh:description> - <fa:hostConfig> <fa:host>192.168.1.18</fa:host> <fh:enabled>true</fh:enabled> <fh:cpus>0</fh:cpus> <fh:tools>vmstat 1; nicstat -i eth0 1</fh:tools> <fh:userCommands/> </fa:hostConfig> <fa:scale>25</fa:scale> - <fa:runControl> <fa:rampUp>60</fa:rampUp> <fa:steadyState>400</fa:steadyState> <fa:rampDown>60</fa:rampDown> <fa:variableLoad>false</fa:variableLoad> <fa:variableLoadFile>/faban/load.txt</fa:variableLoadFile> </fa:runControl> <outputDir>/usr/local/faban/output/OlioDriver.4W/</outputDir> <audit>false</audit> - <threadStart> <delay>10</delay> <simultaneous>false</simultaneous> <parallel>false</parallel> </threadStart> - <stats> <maxRunTime>6</maxRunTime> <interval>30</interval> </stats> - <runtimeStats enabled="false"> <interval>5</interval> </runtimeStats> - <driverConfig name="UIDriver"> <agents>1</agents> - <stats> <interval>30</interval> </stats> <runtimeStats target="9988"/> - <properties> <property name="serverType">rails</property> </properties> </driverConfig> </fa:runConfig> - <proxyServer> - <fa:hostConfig> <fa:host>192.168.1.13</fa:host> <fa:hostPorts>192.168.1.13:3003</fa:hostPorts> <enabled>true</enabled> <cpus>0</cpus> <tools>vmstat 1; nicstat -i eth0 1</tools> <userCommands/> </fa:hostConfig> <type/> - <fh:service> <fh:name>NginxService</fh:name> <fh:tools>NONE</fh:tools> <fh:restart>true</fh:restart> - <fh:config> <cmdPath/> <logsDir/> <pidDir/> <confPath/> <getAccLog>false</getAccLog> </fh:config> </fh:service> </proxyServer> - <webServer> - <fa:hostConfig> <fa:host/> <fa:hostPorts/> <enabled>true</enabled> <cpus>0</cpus> <tools/> <userCommands/> </fa:hostConfig> - <fh:service> <fh:name>RailsService</fh:name> <fh:tools>NONE</fh:tools> <fh:restart>true</fh:restart> - <fh:config> <type/> <appDir/> <cmdPath/> <logsDir/> <pidsDir/> <numInstances/> <rakePath/> </fh:config> </fh:service> </webServer> - <dbServer> - <fa:hostConfig> <fa:host>192.168.1.16</fa:host> <enabled>true</enabled> <cpus>0</cpus> <tools>vmstat 10; nicstat -i eth0 1</tools> <userCommands/> </fa:hostConfig> <dbDriver>com.mysql.jdbc.Driver</dbDriver> - <connectURL> jdbc:mysql:// 192.168.1.16/olio?user=olio&password=olio&relaxAutoCommit=true&sessionVariables=FOREIGN_KEY_CHECKS=0 </connectURL> <reloadDB>true</reloadDB> <scale>100</scale> - <fh:service> <fh:name>MySQLService</fh:name> <fh:tools/> <fh:restart>false</fh:restart> - <fh:config> <serverHome/> <user>olio</user> <password>olio</password> <confPath/> </fh:config> </fh:service> </dbServer> - <dataStorage> - <fa:hostConfig> <fa:host/> <enabled>true</enabled> <cpus>0</cpus> <tools>NONE</tools> <userCommands/> </fa:hostConfig> <reloadMedia>false</reloadMedia> <mediaDir>/filestore</mediaDir> </dataStorage> - <cacheServers> - <fa:hostConfig> <fa:host/> <fa:hostPorts/> <enabled>false</enabled> <cpus>0</cpus> <tools>NONE</tools> <userCommands/> </fa:hostConfig> - <fh:service> <fh:name>MemcachedService</fh:name> <fh:tools>MemcacheStats -i 10</fh:tools> <fh:restart>true</fh:restart> - <fh:config> <cmdPath>/usr/lib/memcached</cmdPath> <serverMemSize>256</serverMemSize> </fh:config> </fh:service> </cacheServers> </olio> regards, -- Bruno Guimarães Sousa www.ifba.edu.br PONTONET - DGTI - IFBA Ciência da Computação UFBA Registered Linux user #465914 On Mon, Jun 7, 2010 at 1:00 AM, Shanti Subramanyam < [email protected]> wrote: > You may have to increase the open file descriptor limit on your system. > Check 'ulimit' if you are running on Unix. > > Shanti > > > 2010/6/5 Bruno Guimarães Sousa <[email protected]> > > The first faban run goes OK. >> But, from the second and on, there is an error: >> 10:34:51 SEVERE* >> exception* Endpoint ServerSocket[addr= >> 0.0.0.0/0.0.0.0,port=0,localport=9980] ignored exception: >> java.net.SocketException: Too many open files >> I think it is a tomcat or faban error. Did anyone have this same problem? >> (geocoder and faban are on the same computer) >> >> regards, >> -- >> Bruno Guimarães Sousa >> www.ifba.edu.br >> PONTONET - DGTI - IFBA >> Ciência da Computação UFBA >> Registered Linux user #465914 >> > >
