[jboss-cvs] JBoss Messaging SVN: r4089 - in projects/network-benchmark: etc and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Apr 21 07:26:54 EDT 2008
Author: jmesnil
Date: 2008-04-21 07:26:54 -0400 (Mon, 21 Apr 2008)
New Revision: 4089
Removed:
projects/network-benchmark/lib/log4j.jar
projects/network-benchmark/lib/slf4j-api-1.4.3.jar
projects/network-benchmark/lib/slf4j-log4j12.jar
projects/network-benchmark/lib/tomcat-apr-5.5.23.jar
Modified:
projects/network-benchmark/
projects/network-benchmark/.classpath
projects/network-benchmark/build.xml
projects/network-benchmark/etc/log4j.xml
projects/network-benchmark/src/network/AllInOneServer.java
projects/network-benchmark/src/network/ClientSetting.java
projects/network-benchmark/src/network/NetworkClientTest.java
Log:
added test to check JBM 2 core performance
Property changes on: projects/network-benchmark
___________________________________________________________________
Name: svn:ignore
+ build
Modified: projects/network-benchmark/.classpath
===================================================================
--- projects/network-benchmark/.classpath 2008-04-21 09:22:09 UTC (rev 4088)
+++ projects/network-benchmark/.classpath 2008-04-21 11:26:54 UTC (rev 4089)
@@ -3,12 +3,7 @@
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="etc"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="lib" path="lib/log4j.jar"/>
- <classpathentry kind="lib" path="lib/slf4j-api-1.4.3.jar"/>
- <classpathentry kind="lib" path="lib/slf4j-log4j12.jar"/>
+ <classpathentry combineaccessrules="false" kind="src" path="/jboss-messaging"/>
<classpathentry kind="lib" path="lib/junit.jar"/>
- <classpathentry kind="lib" path="lib/mina-core-2.0.0-M2-SNAPSHOT.jar"/>
- <classpathentry kind="lib" path="lib/mina-transport-apr-2.0.0-M2-SNAPSHOT.jar"/>
- <classpathentry kind="lib" path="lib/tomcat-apr-5.5.23.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
Modified: projects/network-benchmark/build.xml
===================================================================
--- projects/network-benchmark/build.xml 2008-04-21 09:22:09 UTC (rev 4088)
+++ projects/network-benchmark/build.xml 2008-04-21 11:26:54 UTC (rev 4089)
@@ -6,16 +6,19 @@
====================================================================== -->
<project name="network benchmark" default="help">
- <path id="classpath">
+ <property name="jbm.dist" value="../jboss-messaging/build/messaging-2.0.0.alpha1/"/>
+ <property name="jbm.dist.lib" value="${jbm.dist}/lib/"/>
+ <property name="jbm.dist.config" value="${jbm.dist}/config/"/>
+
+ <echo>Using JBoss Messaging distribution at ${jbm.dist}</echo>
+ <path id="classpath">
<pathelement path="etc/ "/>
<pathelement path="bin/ "/>
<pathelement location="lib/junit.jar"/>
- <pathelement location="lib/mina-core-2.0.0-M2-SNAPSHOT.jar"/>
- <pathelement location="lib/mina-transport-apr-2.0.0-M2-SNAPSHOT.jar"/>
- <pathelement location="lib/tomcat-apr-5.5.23.jar"/>
- <pathelement location="lib/slf4j-api-1.4.3.jar"/>
- <pathelement location="lib/slf4j-log4j12.jar"/>
- <pathelement location="lib/log4j.jar"/>
+ <fileset dir="${jbm.dist.lib}">
+ <include name="**/*.jar"/>
+ </fileset>
+ <pathelement path="${jbm.dist.config}" />
</path>
<target name="help" description="-> Display help">
@@ -39,26 +42,33 @@
classname="network.AllInOneServer"
fork="true">
<jvmarg value="-server"/>
+<!--
<jvmarg value="-XX:+AggressiveOpts"/>
<jvmarg value="-XX:+UseBiasedLocking"/>
<jvmarg value="-XX:+UseFastAccessorMethods"/>
<jvmarg value="-XX:+UseLargePages"/>
+-->
</java>
</target>
<target name="test" depends="compile" description="-> Run the tests">
- <junit showoutput="true" fork="true">
- <classpath>
- <path refid="classpath"/>
- </classpath>
+ <junit fork="true">
+ <jvmarg value="-server"/>
+ <classpath>
+ <path refid="classpath"/>
+ </classpath>
<test name="network.NetworkClientTest">
<formatter type="brief" usefile="false"/>
</test>
- <jvmarg value="-server"/>
+ <test name="core.CoreMessagingClientTest">
+ <formatter type="brief" usefile="false"/>
+ </test>
+<!--
<jvmarg value="-XX:+AggressiveOpts"/>
<jvmarg value="-XX:+UseBiasedLocking"/>
<jvmarg value="-XX:+UseFastAccessorMethods"/>
<jvmarg value="-XX:+UseLargePages"/>
+-->
</junit>
</target>
Modified: projects/network-benchmark/etc/log4j.xml
===================================================================
--- projects/network-benchmark/etc/log4j.xml 2008-04-21 09:22:09 UTC (rev 4088)
+++ projects/network-benchmark/etc/log4j.xml 2008-04-21 11:26:54 UTC (rev 4089)
@@ -7,12 +7,16 @@
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
- <param name="Threshold" value="TRACE"/>
+ <param name="Threshold" value="WARN"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%t %d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
</layout>
</appender>
+ <category name="network">
+ <priority value="WARN"/>
+ </category>
+
<category name="org.apache">
<priority value="WARN"/>
</category>
Deleted: projects/network-benchmark/lib/log4j.jar
===================================================================
(Binary files differ)
Deleted: projects/network-benchmark/lib/slf4j-api-1.4.3.jar
===================================================================
(Binary files differ)
Deleted: projects/network-benchmark/lib/slf4j-log4j12.jar
===================================================================
(Binary files differ)
Deleted: projects/network-benchmark/lib/tomcat-apr-5.5.23.jar
===================================================================
(Binary files differ)
Modified: projects/network-benchmark/src/network/AllInOneServer.java
===================================================================
--- projects/network-benchmark/src/network/AllInOneServer.java 2008-04-21 09:22:09 UTC (rev 4088)
+++ projects/network-benchmark/src/network/AllInOneServer.java 2008-04-21 11:26:54 UTC (rev 4089)
@@ -3,6 +3,8 @@
import java.util.ArrayList;
import java.util.List;
+import core.CoreMessagingServer;
+
public class AllInOneServer {
public static void main(String[] args) throws Exception {
CommonSetting.print();
@@ -10,6 +12,7 @@
List<Thread> threads = new ArrayList<Thread>();
+ /*
threads.add(new Thread() {
@Override
public void run() {
@@ -31,10 +34,13 @@
}
}
});
+ */
threads.add(new Thread(new MINANIOServer()));
- threads.add(new Thread(new MINAAPRServer()));
-
+ //threads.add(new Thread(new MINAAPRServer()));
+
+ threads.add(new Thread(new CoreMessagingServer()));
+
for (Thread t: threads) {
t.start();
}
Modified: projects/network-benchmark/src/network/ClientSetting.java
===================================================================
--- projects/network-benchmark/src/network/ClientSetting.java 2008-04-21 09:22:09 UTC (rev 4088)
+++ projects/network-benchmark/src/network/ClientSetting.java 2008-04-21 11:26:54 UTC (rev 4089)
@@ -3,8 +3,9 @@
public class ClientSetting {
- public static final String SERVER_HOSTNAME = "192.168.0.11";
- public static final long DURATION = 10000; // in ms
+ public static final String SERVER_HOSTNAME = "192.168.0.4";
+ public static final long DURATION = 30000; // in ms
+ public static final long WARMUP = DURATION / 10; // in ms
public static void print()
{
Modified: projects/network-benchmark/src/network/NetworkClientTest.java
===================================================================
--- projects/network-benchmark/src/network/NetworkClientTest.java 2008-04-21 09:22:09 UTC (rev 4088)
+++ projects/network-benchmark/src/network/NetworkClientTest.java 2008-04-21 11:26:54 UTC (rev 4089)
@@ -1,7 +1,16 @@
package network;
-import static network.ClientSetting.*;
-import static network.CommonSetting.*;
+import static network.ClientSetting.DURATION;
+import static network.ClientSetting.SERVER_HOSTNAME;
+import static network.ClientSetting.WARMUP;
+import static network.CommonSetting.BIO_SERVER_PORT;
+import static network.CommonSetting.ENABLE_TCP_NO_DELAY;
+import static network.CommonSetting.MINA_APR_SERVER_PORT;
+import static network.CommonSetting.MINA_NIO_SERVER_PORT;
+import static network.CommonSetting.NIO_SERVER_PORT;
+import static network.CommonSetting.REQUEST_SIZE;
+import static network.CommonSetting.RESPONSE_SIZE;
+import static network.CommonSetting.TCP_BUFFER_SIZE;
import java.io.IOException;
import java.io.InputStream;
@@ -21,7 +30,6 @@
import org.apache.mina.common.IoHandlerAdapter;
import org.apache.mina.common.IoSession;
import org.apache.mina.transport.socket.SocketConnector;
-import org.apache.mina.transport.socket.apr.AprSocketConnector;
import org.apache.mina.transport.socket.nio.NioSocketConnector;
public class NetworkClientTest extends TestCase
@@ -40,86 +48,66 @@
// Public --------------------------------------------------------
- public void test_Blocking_BIOClient_To_BIOServer() throws Exception
+ public void _test_Blocking_BIOClient_To_BIOServer() throws Exception
{
startBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, BIO_SERVER_PORT));
}
- public void test_NonBlocking_BIOClient_To_BIOServer() throws Exception
+ public void _test_NonBlocking_BIOClient_To_BIOServer() throws Exception
{
startNonBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, BIO_SERVER_PORT));
}
- public void test_Blocking_BIOClient_To_NIOServer() throws Exception
+ public void _test_Blocking_BIOClient_To_NIOServer() throws Exception
{
startBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, NIO_SERVER_PORT));
}
- public void test_NonBlocking_BIOClient_To_NIOServer() throws Exception
+ public void _test_NonBlocking_BIOClient_To_NIOServer() throws Exception
{
startNonBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, NIO_SERVER_PORT));
}
- public void test_Blocking_BIOClient_To_MINANIOServer() throws Exception
+ public void _test_Blocking_BIOClient_To_MINANIOServer() throws Exception
{
startBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, MINA_NIO_SERVER_PORT));
}
- public void test_NonBlocking_BIOClient_To_MINANIOServer() throws Exception
+ public void _test_NonBlocking_BIOClient_To_MINANIOServer() throws Exception
{
startNonBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, MINA_NIO_SERVER_PORT));
}
- public void test_Blocking_BIOClient_To_MINAAPRServer() throws Exception
+ public void _test_Blocking_BIOClient_To_MINAAPRServer() throws Exception
{
startBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, MINA_APR_SERVER_PORT));
}
- public void test_NonBlocking_BIOClient_To_MINAAPRServer() throws Exception
+ public void _test_NonBlocking_BIOClient_To_MINAAPRServer() throws Exception
{
startNonBlockingBioClient(new InetSocketAddress(SERVER_HOSTNAME, MINA_APR_SERVER_PORT));
}
- public void test_Blocking_MINANIOClient_To_BIOServer() throws Exception
+ public void _test_Blocking_MINANIOClient_To_BIOServer() throws Exception
{
startBlockingMINAClient(new NioSocketConnector(), BIO_SERVER_PORT);
}
- public void test_NonBlocking_MINANIOClient_To_BIOServer() throws Exception
+ public void _test_NonBlocking_MINANIOClient_To_BIOServer() throws Exception
{
startNonBlockingMINAClient(new NioSocketConnector(), BIO_SERVER_PORT);
}
- public void test_Blocking_MINAAPRClient_To_BIOServer() throws Exception
+ public void _test_Blocking_MINANIOClient_To_NIOServer() throws Exception
{
- startBlockingMINAClient(new AprSocketConnector(), BIO_SERVER_PORT);
- }
-
- public void test_NonBlocking_MINAAPRClient_To_BIOServer() throws Exception
- {
- startNonBlockingMINAClient(new AprSocketConnector(), BIO_SERVER_PORT);
- }
-
- public void test_Blocking_MINANIOClient_To_NIOServer() throws Exception
- {
startBlockingMINAClient(new NioSocketConnector(), NIO_SERVER_PORT);
}
- public void test_NonBlocking_MINANIOClient_To_NIOServer() throws Exception
+ public void _test_NonBlocking_MINANIOClient_To_NIOServer() throws Exception
{
startNonBlockingMINAClient(new NioSocketConnector(), NIO_SERVER_PORT);
}
- public void test_Blocking_MINAAPRClient_To_NIOServer() throws Exception
- {
- startBlockingMINAClient(new AprSocketConnector(), NIO_SERVER_PORT);
- }
-
- public void test_NonBlocking_MINAAPRClient_To_NIOServer() throws Exception
- {
- startNonBlockingMINAClient(new AprSocketConnector(), NIO_SERVER_PORT);
- }
-
public void test_Blocking_MINANIOClient_To_MINANIOServer() throws Exception
{
startBlockingMINAClient(new NioSocketConnector(), MINA_NIO_SERVER_PORT);
@@ -130,35 +118,6 @@
startNonBlockingMINAClient(new NioSocketConnector(), MINA_NIO_SERVER_PORT);
}
- public void test_Blocking_MINANIOClient_To_MINAAPRServer() throws Exception
- {
- startBlockingMINAClient(new NioSocketConnector(), MINA_APR_SERVER_PORT);
- }
-
- public void test_NonBlocking_MINANIOClient_To_MINAAPRServer() throws Exception
- {
- startNonBlockingMINAClient(new NioSocketConnector(), MINA_APR_SERVER_PORT);
- }
-
- public void test_Blocking_MINAAPRClient_To_MINANIOServer() throws Exception
- {
- startBlockingMINAClient(new AprSocketConnector(), MINA_NIO_SERVER_PORT);
- }
-
- public void test_NonBlocking_MINAAPRClient_To_MINANIOServer() throws Exception
- {
- startNonBlockingMINAClient(new AprSocketConnector(), MINA_NIO_SERVER_PORT);
- }
-
- public void test_Blocking_MINAAPRClient_To_MINAAPRServer() throws Exception
- {
- startBlockingMINAClient(new AprSocketConnector(), MINA_APR_SERVER_PORT);
- }
-
- public void test_NonBlocking_MINAAPRClient_To_MINAAPRServer() throws Exception
- {
- startNonBlockingMINAClient(new AprSocketConnector(), MINA_APR_SERVER_PORT);
- }
// Package protected ---------------------------------------------
// Protected -----------------------------------------------------
@@ -208,7 +167,8 @@
InputStream is = clientSocket.getInputStream();
long start = System.currentTimeMillis();
- int count = 0;
+ int sendCount = 0;
+ int receivedCount = 0;
byte[] message = createMessage();
byte[] response = new byte[RESPONSE_SIZE];
@@ -216,6 +176,7 @@
while (System.currentTimeMillis() - start < DURATION)
{
os.write(message);
+ sendCount++;
int readBytes = 0;
for (;;) {
int localReadBytes = is.read(response, readBytes, response.length - readBytes);
@@ -225,8 +186,11 @@
}
readBytes += localReadBytes;
if (readBytes == RESPONSE_SIZE) {
- count ++;
- break;
+ if (System.currentTimeMillis() - start >= WARMUP) {
+ receivedCount ++;
+ }
+ break;
+
}
}
}
@@ -235,8 +199,8 @@
os.close();
clientSocket.close();
- long periodInMs = System.currentTimeMillis() - start;
- display(count, count, periodInMs);
+ long periodInMs = System.currentTimeMillis() - start - WARMUP;
+ display(sendCount, receivedCount, periodInMs);
}
private void startNonBlockingBioClient(SocketAddress address)
@@ -246,6 +210,8 @@
OutputStream os = clientSocket.getOutputStream();
final InputStream is = clientSocket.getInputStream();
+ final AtomicLong start = new AtomicLong(0);
+ final AtomicLong receivedBytesDuringWarmup = new AtomicLong(0);
final AtomicLong receivedBytes = new AtomicLong(0);
Thread receiver = new Thread()
{
@@ -263,6 +229,9 @@
System.out.println("Connection closed by server.");
break;
}
+ if (System.currentTimeMillis() - start.longValue() < WARMUP)
+ receivedBytesDuringWarmup.addAndGet(readBytes);
+
receivedBytes.addAndGet(readBytes);
}
}
@@ -282,9 +251,9 @@
receiver.start();
byte[] request = createMessage();
- long start = System.currentTimeMillis();
+ start.set(System.currentTimeMillis());
int sentRequests = 0;
- while (System.currentTimeMillis() - start < DURATION)
+ while (System.currentTimeMillis() - start.longValue() < DURATION)
{
os.write(request);
sentRequests ++;
@@ -298,9 +267,9 @@
os.close();
clientSocket.close();
- long periodInMs = System.currentTimeMillis() - start;
+ long periodInMs = System.currentTimeMillis() - start.longValue() - WARMUP;
- display(sentRequests, receivedBytes.get() / RESPONSE_SIZE, periodInMs);
+ display(sentRequests, (receivedBytes.get() - receivedBytesDuringWarmup.get()) / RESPONSE_SIZE, periodInMs);
}
private void startBlockingMINAClient(SocketConnector client, int port)
@@ -309,6 +278,10 @@
InetSocketAddress address = new InetSocketAddress(SERVER_HOSTNAME, port);
final IoBuffer request = IoBuffer.wrap(createMessage());
final AtomicBoolean shutdown = new AtomicBoolean();
+
+ final AtomicLong bytesReceivedDuringWarmup = new AtomicLong(0);
+ final AtomicLong start = new AtomicLong(0);
+
client.setHandler(new IoHandlerAdapter()
{
@Override
@@ -327,13 +300,16 @@
if (receivedResponses != 0 && receivedResponses == sentRequests) {
session.write(request.duplicate());
}
+ if (System.currentTimeMillis() - start.longValue() < WARMUP) {
+ bytesReceivedDuringWarmup.set(session.getReadBytes());
+ }
}
}
});
ConnectFuture future = client.connect(address).awaitUninterruptibly();
IoSession session = future.getSession();
- long start = System.currentTimeMillis();
+ start.set(System.currentTimeMillis());
try {
Thread.sleep(DURATION);
} catch (InterruptedException e) {
@@ -346,8 +322,8 @@
}
session.closeOnFlush().awaitUninterruptibly();
- long periodInMs = System.currentTimeMillis() - start;
- display(client.getWrittenBytes() / REQUEST_SIZE, client.getReadBytes() / RESPONSE_SIZE, periodInMs);
+ long periodInMs = System.currentTimeMillis() - start.longValue() - WARMUP;
+ display(client.getWrittenBytes() / REQUEST_SIZE, (client.getReadBytes() - bytesReceivedDuringWarmup.get()) / RESPONSE_SIZE, periodInMs);
client.dispose();
}
More information about the jboss-cvs-commits
mailing list