You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2013/06/19 11:21:43 UTC
svn commit: r1494522 - in /httpcomponents/benchmark/httpcore/trunk: ./
src/main/java/org/apache/http/benchmark/
src/main/java/org/apache/http/benchmark/httpcore/
src/main/java/org/apache/http/benchmark/jetty/
src/main/java/org/apache/http/benchmark/netty/
Author: olegk
Date: Wed Jun 19 09:21:42 2013
New Revision: 1494522
URL: http://svn.apache.org/r1494522
Log:
Removed blocking implementations; migrated to Gradle for build and execution automation
Added:
httpcomponents/benchmark/httpcore/trunk/.gitignore
httpcomponents/benchmark/httpcore/trunk/build.gradle
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/BenchRunner.java
- copied, changed from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunHttpCore.java
- copied, changed from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java (contents, props changed)
- copied, changed from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpWorkerCallback.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunNetty.java
- copied, changed from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java
Removed:
httpcomponents/benchmark/httpcore/trunk/pom.xml
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpCoreServer.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpListener.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpWorker.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpWorkerCallback.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/RandomDataHandler.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/StdHttpWorkerCallback.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/jetty/JettyServer.java
Modified:
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpCoreNIOServer.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/NHttpListener.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/jetty/JettyNIOServer.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/HttpServerPipelineFactory.java
httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/NettyNIOServer.java
Added: httpcomponents/benchmark/httpcore/trunk/.gitignore
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/.gitignore?rev=1494522&view=auto
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/.gitignore (added)
+++ httpcomponents/benchmark/httpcore/trunk/.gitignore Wed Jun 19 09:21:42 2013
@@ -0,0 +1,5 @@
+target
+.gradle
+build
+.idea
+*.iml
Added: httpcomponents/benchmark/httpcore/trunk/build.gradle
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/build.gradle?rev=1494522&view=auto
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/build.gradle (added)
+++ httpcomponents/benchmark/httpcore/trunk/build.gradle Wed Jun 19 09:21:42 2013
@@ -0,0 +1,32 @@
+apply plugin: 'java'
+
+repositories {
+ mavenCentral()
+}
+
+version = '0.1-SNAPSHOT'
+
+sourceCompatibility = '1.6'
+
+dependencies {
+ compile group: 'org.apache.httpcomponents', name: 'httpcore-nio', version: '4.3-beta2'
+ compile group: 'org.apache.httpcomponents', name: 'httpcore-ab', version: '4.3-beta2'
+ compile group: 'commons-cli', name: 'commons-cli', version: '1.2'
+ compile group: 'org.eclipse.jetty', name: 'jetty-server', version: '8.1.7.v20120910'
+ compile group: 'io.netty', name: 'netty', version: '3.6.2.Final'
+ compile group: 'org.slf4j', name: 'slf4j-api', version: '1.5.10'
+ compile group: 'org.slf4j', name: 'slf4j-nop', version: '1.5.10'
+}
+
+task benchmark(dependsOn: 'classes') << {
+ def servers = ['Jetty', 'HttpCore', 'Netty']
+ servers.each { server ->
+ javaexec {
+ main = "org.apache.http.benchmark.Run${server}"
+ classpath = sourceSets.main.runtimeClasspath
+ }
+ sleep(2000)
+ }
+}
+
+defaultTasks 'clean', 'benchmark'
Copied: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/BenchRunner.java (from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java)
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/BenchRunner.java?p2=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/BenchRunner.java&p1=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java&r1=1492875&r2=1494522&rev=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/BenchRunner.java Wed Jun 19 09:21:42 2013
@@ -26,25 +26,18 @@
*/
package org.apache.http.benchmark;
-import java.net.URL;
-
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.CommandLineParser;
import org.apache.commons.cli.HelpFormatter;
import org.apache.commons.cli.Options;
+import org.apache.commons.cli.ParseException;
import org.apache.commons.cli.PosixParser;
-import org.apache.http.benchmark.httpcore.HttpCoreNIOServer;
-import org.apache.http.benchmark.httpcore.HttpCoreServer;
-import org.apache.http.benchmark.jetty.JettyNIOServer;
-import org.apache.http.benchmark.jetty.JettyServer;
-import org.apache.http.benchmark.netty.NettyNIOServer;
-
-public class Benchmark {
- private static final int PORT = 8989;
+import java.net.URL;
- public static void main(final String[] args) throws Exception {
+public final class BenchRunner {
+ public static Config parseConfig(final String[] args) throws ParseException {
final Config config = new Config();
if (args.length > 0) {
final Options options = CommandLineUtils.getOptions();
@@ -61,23 +54,14 @@ public class Benchmark {
config.setRequests(100000);
config.setThreads(50);
}
-
- final URL target = new URL("http", "localhost", PORT, "/rnd?c=2048");
- config.setUrl(target);
-
- final Benchmark benchmark = new Benchmark();
- benchmark.run(new JettyServer(PORT), config);
- benchmark.run(new HttpCoreServer(PORT), config);
- benchmark.run(new JettyNIOServer(PORT), config);
- benchmark.run(new HttpCoreNIOServer(PORT), config);
- benchmark.run(new NettyNIOServer(PORT), config);
+ return config;
}
- public Benchmark() {
- super();
- }
- public void run(final HttpServer server, final Config config) throws Exception {
+ public static void run(final HttpServer server, final Config config) throws Exception {
+ final URL target = new URL("http", "localhost", server.getPort(), "/rnd?c=2048");
+ config.setUrl(target);
+
server.start();
try {
System.out.println("---------------------------------------------------------------");
@@ -96,7 +80,6 @@ public class Benchmark {
final HttpBenchmark benchmark = new HttpBenchmark(config);
benchmark.execute();
System.out.println("---------------------------------------------------------------");
- Thread.sleep(3000);
} finally {
server.shutdown();
}
Modified: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java?rev=1494522&r1=1494521&r2=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/Benchmark.java Wed Jun 19 09:21:42 2013
@@ -26,80 +26,19 @@
*/
package org.apache.http.benchmark;
-import java.net.URL;
-
-import org.apache.commons.cli.CommandLine;
-import org.apache.commons.cli.CommandLineParser;
-import org.apache.commons.cli.HelpFormatter;
-import org.apache.commons.cli.Options;
-import org.apache.commons.cli.PosixParser;
import org.apache.http.benchmark.httpcore.HttpCoreNIOServer;
-import org.apache.http.benchmark.httpcore.HttpCoreServer;
import org.apache.http.benchmark.jetty.JettyNIOServer;
-import org.apache.http.benchmark.jetty.JettyServer;
import org.apache.http.benchmark.netty.NettyNIOServer;
public class Benchmark {
- private static final int PORT = 8989;
+ static final int PORT = 8989;
public static void main(final String[] args) throws Exception {
-
- final Config config = new Config();
- if (args.length > 0) {
- final Options options = CommandLineUtils.getOptions();
- final CommandLineParser parser = new PosixParser();
- final CommandLine cmd = parser.parse(options, args);
- if (cmd.hasOption('h')) {
- final HelpFormatter formatter = new HelpFormatter();
- formatter.printHelp("Benchmark [options]", options);
- System.exit(1);
- }
- CommandLineUtils.parseCommandLine(cmd, config);
- } else {
- config.setKeepAlive(true);
- config.setRequests(100000);
- config.setThreads(50);
- }
-
- final URL target = new URL("http", "localhost", PORT, "/rnd?c=2048");
- config.setUrl(target);
-
- final Benchmark benchmark = new Benchmark();
- benchmark.run(new JettyServer(PORT), config);
- benchmark.run(new HttpCoreServer(PORT), config);
- benchmark.run(new JettyNIOServer(PORT), config);
- benchmark.run(new HttpCoreNIOServer(PORT), config);
- benchmark.run(new NettyNIOServer(PORT), config);
- }
-
- public Benchmark() {
- super();
- }
-
- public void run(final HttpServer server, final Config config) throws Exception {
- server.start();
- try {
- System.out.println("---------------------------------------------------------------");
- System.out.println(server.getName() + "; version: " + server.getVersion());
- System.out.println("---------------------------------------------------------------");
-
- final Config warmupConfig = config.copy();
- int n = warmupConfig.getRequests() / 100;
- if (n > 100) {
- n = 100;
- }
- warmupConfig.setRequests(n);
- final HttpBenchmark warmUp = new HttpBenchmark(warmupConfig);
- warmUp.doExecute();
-
- final HttpBenchmark benchmark = new HttpBenchmark(config);
- benchmark.execute();
- System.out.println("---------------------------------------------------------------");
- Thread.sleep(3000);
- } finally {
- server.shutdown();
- }
+ final Config config = BenchRunner.parseConfig(args);
+ BenchRunner.run(new JettyNIOServer(PORT), config);
+ BenchRunner.run(new HttpCoreNIOServer(PORT), config);
+ BenchRunner.run(new NettyNIOServer(PORT), config);
}
}
Modified: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java?rev=1494522&r1=1494521&r2=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java Wed Jun 19 09:21:42 2013
@@ -33,6 +33,8 @@ public interface HttpServer {
String getVersion();
+ int getPort();
+
void start() throws Exception;
void shutdown();
Copied: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunHttpCore.java (from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java)
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunHttpCore.java?p2=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunHttpCore.java&p1=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java&r1=1492875&r2=1494522&rev=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunHttpCore.java Wed Jun 19 09:21:42 2013
@@ -24,17 +24,15 @@
* <http://www.apache.org/>.
*
*/
-
package org.apache.http.benchmark;
-public interface HttpServer {
-
- String getName();
-
- String getVersion();
+import org.apache.http.benchmark.httpcore.HttpCoreNIOServer;
- void start() throws Exception;
+public class RunHttpCore {
- void shutdown();
+ public static void main(final String[] args) throws Exception {
+ final Config config = BenchRunner.parseConfig(args);
+ BenchRunner.run(new HttpCoreNIOServer(Benchmark.PORT), config);
+ }
}
Copied: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java (from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpWorkerCallback.java)
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java?p2=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java&p1=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpWorkerCallback.java&r1=1492875&r2=1494522&rev=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpWorkerCallback.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java Wed Jun 19 09:21:42 2013
@@ -24,12 +24,15 @@
* <http://www.apache.org/>.
*
*/
-package org.apache.http.benchmark.httpcore;
+package org.apache.http.benchmark;
-interface HttpWorkerCallback {
+import org.apache.http.benchmark.jetty.JettyNIOServer;
- void started(HttpWorker worker);
+public class RunJetty {
- void shutdown(HttpWorker worker);
+ public static void main(final String[] args) throws Exception {
+ final Config config = BenchRunner.parseConfig(args);
+ BenchRunner.run(new JettyNIOServer(Benchmark.PORT), config);
+ }
}
Propchange: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunJetty.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Copied: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunNetty.java (from r1492875, httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java)
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunNetty.java?p2=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunNetty.java&p1=httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java&r1=1492875&r2=1494522&rev=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/HttpServer.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/RunNetty.java Wed Jun 19 09:21:42 2013
@@ -24,17 +24,17 @@
* <http://www.apache.org/>.
*
*/
-
package org.apache.http.benchmark;
-public interface HttpServer {
-
- String getName();
-
- String getVersion();
-
- void start() throws Exception;
-
- void shutdown();
+import org.apache.http.benchmark.httpcore.HttpCoreNIOServer;
+import org.apache.http.benchmark.jetty.JettyNIOServer;
+import org.apache.http.benchmark.netty.NettyNIOServer;
+
+public class RunNetty {
+
+ public static void main(final String[] args) throws Exception {
+ final Config config = BenchRunner.parseConfig(args);
+ BenchRunner.run(new NettyNIOServer(Benchmark.PORT), config);
+ }
}
Modified: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpCoreNIOServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpCoreNIOServer.java?rev=1494522&r1=1494521&r2=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpCoreNIOServer.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/HttpCoreNIOServer.java Wed Jun 19 09:21:42 2013
@@ -106,6 +106,11 @@ public class HttpCoreNIOServer implement
}
@Override
+ public int getPort() {
+ return this.port;
+ }
+
+ @Override
public void start() throws Exception {
this.listener.start();
this.listener.listen(new InetSocketAddress(this.port));
Modified: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/NHttpListener.java
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/NHttpListener.java?rev=1494522&r1=1494521&r2=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/NHttpListener.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/httpcore/NHttpListener.java Wed Jun 19 09:21:42 2013
@@ -33,7 +33,7 @@ import org.apache.http.nio.reactor.IOEve
import org.apache.http.nio.reactor.ListenerEndpoint;
import org.apache.http.nio.reactor.ListeningIOReactor;
-public class NHttpListener extends Thread {
+class NHttpListener extends Thread {
private final ListeningIOReactor ioreactor;
private final IOEventDispatch ioEventDispatch;
Modified: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/jetty/JettyNIOServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/jetty/JettyNIOServer.java?rev=1494522&r1=1494521&r2=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/jetty/JettyNIOServer.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/jetty/JettyNIOServer.java Wed Jun 19 09:21:42 2013
@@ -35,6 +35,7 @@ import org.eclipse.jetty.util.thread.Que
public class JettyNIOServer implements HttpServer {
+ private int port;
private final Server server;
public JettyNIOServer(final int port) {
@@ -42,6 +43,7 @@ public class JettyNIOServer implements H
if (port <= 0) {
throw new IllegalArgumentException("Server port may not be negative or null");
}
+ this.port = port;
final SelectChannelConnector connector = new SelectChannelConnector();
connector.setPort(port);
@@ -67,6 +69,11 @@ public class JettyNIOServer implements H
return Server.getVersion();
}
+ @Override
+ public int getPort() {
+ return this.port;
+ }
+
public void start() throws Exception {
this.server.start();
}
Modified: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/HttpServerPipelineFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/HttpServerPipelineFactory.java?rev=1494522&r1=1494521&r2=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/HttpServerPipelineFactory.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/HttpServerPipelineFactory.java Wed Jun 19 09:21:42 2013
@@ -33,7 +33,7 @@ import org.jboss.netty.channel.Channels;
import org.jboss.netty.handler.codec.http.HttpRequestDecoder;
import org.jboss.netty.handler.codec.http.HttpResponseEncoder;
-public class HttpServerPipelineFactory implements ChannelPipelineFactory {
+class HttpServerPipelineFactory implements ChannelPipelineFactory {
public ChannelPipeline getPipeline() throws Exception {
final ChannelPipeline pipeline = Channels.pipeline();
Modified: httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/NettyNIOServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/NettyNIOServer.java?rev=1494522&r1=1494521&r2=1494522&view=diff
==============================================================================
--- httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/NettyNIOServer.java (original)
+++ httpcomponents/benchmark/httpcore/trunk/src/main/java/org/apache/http/benchmark/netty/NettyNIOServer.java Wed Jun 19 09:21:42 2013
@@ -65,6 +65,11 @@ public class NettyNIOServer implements H
}
@Override
+ public int getPort() {
+ return this.port;
+ }
+
+ @Override
public void start() throws Exception {
serverBootstrap.bind(new InetSocketAddress(port));
}