1. Set JVM_ENV:
- Go to “red5” directory:
- Open the “red5.bat” File and add a line.
- “set JAVA_OPTS=-Xms256m -Xmx512m -XX:MaxPermSize=128m” To extend the jvm max heap size. Here we set 512mb.
2. Set Log Level
- Go to “red5\conf” directory.
- Open the “logback.xml” file
- Set all the “level value” to the “ERROR”
- Then it will be able to show the error log only.
3. Start Test
- Put the “df_message.war” which is server war file to the “red5\webapps” directory.
- Start the red5 server, then the server will install the war file, which is unzipping it and deploy to the server side.
- Since the service in the server side is already started, we need to connect the clients. [EX. 250 Clients, 100Msgs. 1000Length String]
- Run command “MsgTester #NumberOfClients# #NumberOfMessages# #MessageLength#”. Then Clients will Connect to the server with gradual increase.
- After #NumberOfClients# clients are all connected to the server, it will wait for #NumberOfMessages# messages with #MessageLength#.
When the clients are all connected to the server, Run “MessageSenderManager” with specified message length and message numbers which are needed to set same as client.
Then MessageSenderManager will connect to the server, and start sending message to all clients connected to the server.
MessageTester will show the average time cost for receiving a message when certain number of clients are connected. Also it will write a “result.csv” file for the report.
After collecting the “result.csv” files from different test PC, we can run the “FileCollector.java” to merge the results to one file – > “finalReport.csv”.
4. Test Result.
- This is memory dump result with “Visual VM”, and we ran the test for 1000 clients receiving the 100 message with 3000 string length.
- Red5 Server runs perfectly, but there was a tiny problem.
- The memory is increasing gradually until it finishes the sending message task
- First of all, we thought there are maybe the memory leak problem. BUT, we observed that the server collected the garbage after while, so that won’t be a critical.
- Other problems? None…. Nothing big, so far.
- Following Pic is the library that used for the MessageSender and MessageTester
- Just a cute doggy.