diff options
Diffstat (limited to 'src/main/java/org/openslx/dnbd3/status')
4 files changed, 15 insertions, 9 deletions
diff --git a/src/main/java/org/openslx/dnbd3/status/App.java b/src/main/java/org/openslx/dnbd3/status/App.java index 9f7ef5f..65ff524 100644 --- a/src/main/java/org/openslx/dnbd3/status/App.java +++ b/src/main/java/org/openslx/dnbd3/status/App.java @@ -7,6 +7,8 @@ public class App public static void main( String[] args ) throws IOException { + System.setProperty( "com.example.jndi.dns.timeout.initial", "400" ); + System.setProperty( "com.example.jndi.dns.timeout.retries", "2" ); WebServer ws = new WebServer( 8888 ); ws.run(); } diff --git a/src/main/java/org/openslx/dnbd3/status/StatisticsGenerator.java b/src/main/java/org/openslx/dnbd3/status/StatisticsGenerator.java index 1f3c25a..fb94275 100644 --- a/src/main/java/org/openslx/dnbd3/status/StatisticsGenerator.java +++ b/src/main/java/org/openslx/dnbd3/status/StatisticsGenerator.java @@ -2,10 +2,10 @@ package org.openslx.dnbd3.status; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Future; +import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; @@ -28,7 +28,7 @@ public class StatisticsGenerator { private final List<ServerPoller> pollers; private volatile long lastUpdate = 0; - private ExecutorService threadPool = new ThreadPoolExecutor( 1, 6, 1, TimeUnit.MINUTES, new ArrayBlockingQueue<Runnable>( 100 ) ); + private ExecutorService threadPool = new ThreadPoolExecutor( 3, 8, 1, TimeUnit.MINUTES, new SynchronousQueue<Runnable>() ); private List<Future<Status>> futureStatusList = new ArrayList<>(); private List<Status> statusList = new ArrayList<>(); private final Gson jsonBuilder; @@ -59,14 +59,18 @@ public class StatisticsGenerator { futureStatusList.clear(); for ( final ServerPoller p : pollers ) { - Future<Status> ret = threadPool.submit( new Callable<Status>() { + Callable<Status> task = new Callable<Status>() { @Override public Status call() throws Exception { return p.update(); } - } ); - futureStatusList.add( ret ); + }; + try { + Future<Status> ret = threadPool.submit( task ); + futureStatusList.add( ret ); + } catch ( Exception e ) { + } } statusList.clear(); output.servers.clear(); @@ -136,7 +140,7 @@ public class StatisticsGenerator public String getJson() { ensureUpToDate(); - synchronized ( graph ) { + synchronized ( output ) { return jsonBuilder.toJson( output ); } } diff --git a/src/main/java/org/openslx/dnbd3/status/WebServer.java b/src/main/java/org/openslx/dnbd3/status/WebServer.java index 70978c1..3e1a65c 100644 --- a/src/main/java/org/openslx/dnbd3/status/WebServer.java +++ b/src/main/java/org/openslx/dnbd3/status/WebServer.java @@ -25,8 +25,8 @@ public class WebServer extends NanoHTTPD pollers.add( new ServerPoller( "132.230.4.2", 5003 ) ); pollers.add( new ServerPoller( "132.230.8.113", 5003 ) ); pollers.add( new ServerPoller( "132.230.4.60", 5003 ) ); - pollers.add( new ServerPoller( "10.16.0.1", 5003 ) ); - pollers.add( new ServerPoller( "10.16.0.2", 5003 ) ); + pollers.add( new ServerPoller( "10.4.128.240", 5003 ) ); + pollers.add( new ServerPoller( "10.3.56.43", 5003 ) ); imageGenerator = new StatisticsGenerator( pollers ); } diff --git a/src/main/java/org/openslx/dnbd3/status/poller/ServerPoller.java b/src/main/java/org/openslx/dnbd3/status/poller/ServerPoller.java index bfa70fb..446ab2a 100644 --- a/src/main/java/org/openslx/dnbd3/status/poller/ServerPoller.java +++ b/src/main/java/org/openslx/dnbd3/status/poller/ServerPoller.java @@ -35,7 +35,7 @@ public class ServerPoller con.setRequestMethod( "GET" ); con.setConnectTimeout( 1000 ); - con.setReadTimeout( 3000 ); + con.setReadTimeout( 2000 ); if ( con.getResponseCode() != HttpURLConnection.HTTP_OK ) { return null; |