Hi all,
My server info:
CPU: E5-1620
RAM: 8G
8HDD x 3T Raid 10 (Seagate® Constellation™ ES.2 SATA 6Gb/s 7200rpm 64MB 3.0TB)
uplink: 4G
how many ccu can use on my server, please help me Benchmark Performance.
thanks.
Hi all,
My server info:
CPU: E5-1620
RAM: 8G
8HDD x 3T Raid 10 (Seagate® Constellation™ ES.2 SATA 6Gb/s 7200rpm 64MB 3.0TB)
uplink: 4G
how many ccu can use on my server, please help me Benchmark Performance.
thanks.
Hi
For a “live” stream with a bitrate of 500 kbps I estimate an absolute maximum of 8000 concurrent users based on the network but if you’re bonding GigE’s together maybe 7000.
For “on demand” streaming which I assume will be the main use of this server, it’s hard to say as you would need to speed test the array with load.
You can get the Wowza load test tool which supports on demand load testing from here,
https://www.wowza.com/docs/how-to-get-flash-rtmp-load-test-tool
The server will also need to be tuned and a tuning guide can be found here,
https://www.wowza.com/docs/how-to-do-performance-tuning
Jason
It’s probably much more than the load test tool can produce. You might have to use 3 or 4 load test clients
Richard
Correction, I meant it is more than the client (server you are running the load test client on) and/or network can handle. It is possible that it is the limit of the test server’s network bandwidth.
Richard
It looks like you have tuned for 12 cores. Do you have 12 core machine?
Do you have enough available memory to allocate 8000M java heap size?
Show the most recent startup lines from your access log, from the last time you re-started Wowza.
Richard
This line shows there is very little available memory when you started Wowza:
Hardware Physical Memory: 764MB/15927MB
The number on the left is available memory, on the right it is total memory. So there might be a lot of other activity on this server, other services.
Richard
Also, since Wowza/Java reserves memory (java heap size setting) you are not getting an accurate picture this way. Use JConsole instead:
https://www.wowza.com/docs/quick-start-guides
Richard
Corrected link is: https://www.wowza.com/docs/quick-start-guides
Hi,
According to the startup log as Richard said Wowza thinks that you only have 764MB free.
You should be looking at trying to make the amount of memory that you have available accessible by Wowza.
I know that you have tuned the server to take 8000MB memory but Wowza can’t see that its free for some reason and this need to be sorted first.
Jason
Hi
Looking closer at you VHost.xml your NetConnections / ProcessorCount is:
<ProcessorCount>16</ProcessorCount>
To keep to the calculated core count it should be:
<ProcessorCount>24</ProcessorCount>
Jason
Hi Jason,
I use loadtool with info:
workerCount
8000
fileCount
10
connectionString
vod/definst
Video file size: 500MB
Video bitrate: 700kpbs
But traffic network only up to 2Mpbs, please help me config loadtool 2.2.4
thanks
Hi Richard,
thank you very much.
Hi Richard,
My server used NIC bonding (1 + 1) with 2G bw, I have download files test bw up to 1.9G, but when i used WowzaMediaServer loadtool with: 1200 ccu and 1.3G bw, java had die, wowza die, please help me config.
my file config info:
VHost.xml
[HTML]
24
*
1935
true
120000
120000
true
100
cupertinostreaming,smoothstreaming
com.wowza.wms.http.HTTPCrossdomain
*crossdomain.xml
none
com.wowza.wms.http.HTTPClientAccessPolicy
*clientaccesspolicy.xml
none
com.wowza.wms.http.HTTPServerVersion
*
admin-digest
1
*
8086
true
16000
16000
true
100
com.wowza.wms.http.streammanager.HTTPStreamManager
streammanager*
admin-digest
com.wowza.wms.http.HTTPServerInfoXML
serverinfo*
admin-digest
com.wowza.wms.http.HTTPConnectionInfo
connectioninfo*
admin-digest
com.wowza.wms.http.HTTPConnectionCountsXML
connectioncounts*
admin-digest
com.wowza.wms.http.HTTPServerVersion
*
none
smoothstreaming
smoothstreaming
cupertinostreaming
cupertinostreaming
480
320
24
50
5
16
250
true
65000
24000
true
100
2000
90000
250
75
true
256000
65000
50
4096
true
65000
65000
50
4096
12
24
12
12
60000
12000
20000
0
60000
true
[/HTML]
wms.sh
[HTML]#!/bin/sh
JMXOPTIONS=-Dcom.sun.management.jmxremote=true
if [ “$WMSCOMMAND” != “start” ]; then
JMXOPTIONS=""
fi
ulimit -n unlimited
$_EXECJAVA $JAVA_OPTS $JMXOPTIONS -Dcom.wowza.wms.AppHome="$WMSAPP_HOME" -Dcom.wowza.wms.ConfigURL="$WMSCONFIG_URL" -Dcom.wowza.wms.ConfigHome="$WMSCONFIG_HOME" -cp $WMSAPP_HOME/bin/wms-bootstrap.jar com.wowza.wms.bootstrap.Bootstrap $WMSCOMMAND >/dev/null 2>&1 &
if [ “$WMSCOMMAND” = “start” ]; then
echo $! > ${WMSPIDFILE}
wait $!
fi
exit 0
[/HTML]
setenv.sh
[HTML]#!/bin/sh
_EXECJAVA=java
#JAVA_OPTS="-Xmx1200M"
JAVA_OPTS="-Xmx8000M"
JAVA_OPTS="$JAVA_OPTS -server"
#JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:+UseParNewGC"
#JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:NewSize=512m"
#JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"
WMSAPP_HOME=/usr/local/WowzaMediaServer
WMSCONFIG_HOME=/usr/local/WowzaMediaServer
WMSCONFIG_URL=
export WMSAPP_HOME WMSCONFIG_HOME JAVA_OPTS _EXECJAVA
[/HTML]
Hi Richard,
My server have 6 core thread 12
I have change my server info:
CPU: E5-2620
RAM: 16G
8HDD x 3T Raid 10 (Seagate® Constellation™ ES.2 SATA 6Gb/s 7200rpm 64MB 3.0TB)
uplink: 2G (bonding mode 5)
WowzaMediaServer_access_log
[HTML]#Version: 1.0
#Start-Date: 2013-03-18 15:27:24 ICT
#Software: Wowza Media Server 2.2.4 build27452
#Date: 2013-03-18
#Fields: date time tz x-event x-category x-severity x-status x-ctx x-comment x-vhost x-app x-appinst x-duration s-ip s-port s-uri c-ip c-proto c-referrer c-user-agent c-client-id cs-bytes sc-bytes x-stream-id x-spos cs-stream-bytes sc-stream-bytes x-sname x-sname-query x-file-name x-file-ext x-file-size x-file-length x-suri x-suri-stem x-suri-query cs-uri-stem cs-uri-query
2013-03-18 15:27:25 ICT server-start server INFO 200 Wowza Media Server 2 Perpetual 2.2.4 build27452 - - - - 0.918 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - Serial number: XXXXX-XXXXX-XXXXX-XXXXX-***** - - - 0.92 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - Maximum connections: Unlimited - - - 0.921 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - Hardware Available Processors: 12 - - - 0.922 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - Hardware Physical Memory: 764MB/15927MB - - - 0.923 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - Hardware Swap Space: 15990MB/15999MB - - - 0.924 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - Max File Descriptor Count: 4096 - - - 0.925 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - Open File Descriptor Count: 45 - - - 0.926 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - OS Name: Linux - - - 0.926 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - OS Version: 2.6.32-358.el6.x86_64 - - - 0.927 - - - - - - - - - - - - - - - - - - - - - - - - -
2013-03-18 15:27:25 ICT comment server INFO 200 - OS Architecture: amd64 - - - 0.927 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Name: Java HotSpot™ 64-Bit Server VM - - - 0.928 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Vendor: Oracle Corporation - - - 0.929 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Version: 1.7.0 - - - 0.929 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java VM Version: 21.0-b17 - - - 0.93 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Spec Version: 1.7 - - - 0.93 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Home: /usr/java/jdk1.7.0/jre - - - 0.93 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Max Heap Size: 7111MB - - - 0.931 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Architecture: 64 - - - 0.931 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Encoding[file.encoding]: UTF-8 - - - 0.932 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Args[0]: -Xmx8000M - - - 0.932 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Args[1]: -Djava.net.preferIPv4Stack=true - - - 0.933 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Args[2]: -Dcom.sun.management.jmxremote=true - - - 0.933 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Args[3]: -Dcom.wowza.wms.AppHome=/usr/local/WowzaMediaServer - - - 0.933 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Args[4]: -Dcom.wowza.wms.ConfigURL= - - - 0.934 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java Args[5]: -Dcom.wowza.wms.ConfigHome=/usr/local/WowzaMediaServer - - - 0.934 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java GC[0]: PS Scavenge - - - 0.935 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Java GC[1]: PS MarkSweep - - - 0.936 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:25 ICT comment server INFO 200 - Server threads[h/t]: 10/10 - - - 0.936 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:26 ICT comment server INFO 200 - CMDInterface now listening: [any]:8083 - - - 2.698 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:27 ICT vhost-start vhost INFO 200 defaultVHost - - - - 3.374 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:27 ICT comment server INFO 200 - defaultVHost threads[h/t]:480/320 home:/usr/local/WowzaMediaServer - - - 3.439 - - - - - - - - - - - - - - - - - - - - - - - - -2013-03-18 15:27:27 ICT comment vhost INFO 200 defaultVHost Bind attempt ([any]:1935:16) - - - 3.443 - - - - -
[/HTML]
Wowza streaming with 300 ccu, Memory info when used command free mem
[HTML][root@localhost ~]# free mem
total used free shared buffers cached
Mem: 16309900 16135160 174740 0 4984 13553440
-/+ buffers/cache: 2576736 13733164
Swap: 16383992 187328 16196664
[/HTML]
i think memory available 13733164
When 1500 ccu online, my server was die and report error:
[HTML]ERROR server comment 2013-03-23 22:29:38 - - - - - 452
376.213 - - - - - - - - MediaReaderH264Cupertino.fi
llChunk: java.lang.NullPointerException
java.lang.NullPointerException
at com.wowza.wms.server.ServerHandler.exceptionCaught(Unknown Source)
at com.wowza.wms.server.ServerHandlerThreaded.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$2.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextExceptionCaught(Unknown Sou
rce)
at org.apache.mina.common.support.AbstractIoFilterChain.access$800(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.exceptionCaught(Unknown Source)
at org.apache.mina.common.IoFilterAdapter.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextExceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.access$800(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.exceptionCaught(Unknown Source)
at org.apache.mina.filter.executor.ExecutorFilter.processEvent(Unknown Source)
at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
ERROR server comment 2013-03-23 22:33:50 - - - - - 454528.93 - - - - - -
ERROR server comment 2013-03-23 22:33:50 - - - - - 454528.979 - - - - - -
java.lang.NullPointerException
at com.wowza.wms.server.ServerHandler.exceptionCaught(Unknown Source)
at com.wowza.wms.server.ServerHandlerThreaded.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$2.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextExceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.access$800(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$1.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextExceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.fireExceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.access$600(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(Unknown Source)
at org.apache.mina.filter.codec.ProtocolCodecFilter.sessionClosed(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.access$600(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(Unknown Source)
at org.apache.mina.filter.executor.ExecutorFilter.processEvent(Unknown Source)
at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
at com.wowza.wms.server.ServerHandler.exceptionCaught(Unknown Source)
at com.wowza.wms.server.ServerHandlerThreaded.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$2.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextExceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.access$800(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.exceptionCaught(Unknown Source)
at org.apache.mina.common.IoFilterAdapter.exceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextExceptionCaught(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain.access$800(Unknown Source)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.exceptionCaught(Unknown Source)
at org.apache.mina.filter.executor.ExecutorFilter.processEvent(Unknown Source)
at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
WARN stream seek 2013-03-23 22:33:58 366598069 58.187.117.161 - 7008 331451041 3102.615 My.Girlfriend.
Is.An.Agent.2009.720p 1 2176469 331441503 0 753117016 6834.87 My.Girlfriend.Is.An.Agent.2009.720p Insufficient Bandwidth[/HTML]
Access log
[HTML]java.lang.NullPointerException
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
2013-03-23 22:33:50 ICT comment server ERROR 500 - sessionOpened: java.lang.NullPointerException - - - 454528.93 - - - - - - - - - - - - - - - - - – - - - - - -
2013-03-23 22:33:50 ICT comment server ERROR 500 - Application.doWatchdog: checkClientTimeout: java.lang.NullPointerException - - - 454528.979 - - - - - - - - - - - - - – - - - - - - - - - -
java.lang.NullPointerException
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
[5,4][/HTML]
Jconsole remote my streaming server:
Thank Jason,