Lowering the number of HTTP server threads - we are client technology - any server that replies is good enough.
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Fri, 10 May 2013 00:05:40 +0200
changeset 1092e684cc5dec32
parent 1091 3904623ea995
child 1093 5201a2a0ccd1
Lowering the number of HTTP server threads - we are client technology - any server that replies is good enough.
launcher/fx/src/main/java/org/apidesign/bck2brwsr/launcher/BaseHTTPLauncher.java
     1.1 --- a/launcher/fx/src/main/java/org/apidesign/bck2brwsr/launcher/BaseHTTPLauncher.java	Thu May 09 23:26:37 2013 +0200
     1.2 +++ b/launcher/fx/src/main/java/org/apidesign/bck2brwsr/launcher/BaseHTTPLauncher.java	Fri May 10 00:05:40 2013 +0200
     1.3 @@ -51,6 +51,7 @@
     1.4  import org.glassfish.grizzly.http.server.Response;
     1.5  import org.glassfish.grizzly.http.server.ServerConfiguration;
     1.6  import org.glassfish.grizzly.http.util.HttpStatus;
     1.7 +import org.glassfish.grizzly.threadpool.ThreadPoolConfig;
     1.8  
     1.9  /**
    1.10   * Lightweight server to launch Bck2Brwsr applications and tests.
    1.11 @@ -150,6 +151,19 @@
    1.12      private HttpServer initServer(String path, boolean addClasses) throws IOException {
    1.13          HttpServer s = HttpServer.createSimpleServer(path, new PortRange(8080, 65535));
    1.14  
    1.15 +        ThreadPoolConfig fewThreads = ThreadPoolConfig.defaultConfig().copy().
    1.16 +            setPoolName("Fx/Bck2 Brwsr").
    1.17 +            setCorePoolSize(1).
    1.18 +            setMaxPoolSize(5);
    1.19 +        ThreadPoolConfig oneKernel = ThreadPoolConfig.defaultConfig().copy().
    1.20 +            setPoolName("Kernel Fx/Bck2").
    1.21 +            setCorePoolSize(1).
    1.22 +            setMaxPoolSize(3);
    1.23 +        for (NetworkListener nl : s.getListeners()) {
    1.24 +            nl.getTransport().setWorkerThreadPoolConfig(fewThreads);
    1.25 +            nl.getTransport().setKernelThreadPoolConfig(oneKernel);
    1.26 +        }
    1.27 +        
    1.28          final ServerConfiguration conf = s.getServerConfiguration();
    1.29          if (addClasses) {
    1.30              conf.addHttpHandler(new VM(), "/bck2brwsr.js");