summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/main/java/org/openslx/dnbd3/status/App.java2
-rw-r--r--src/main/java/org/openslx/dnbd3/status/StatisticsGenerator.java16
-rw-r--r--src/main/java/org/openslx/dnbd3/status/WebServer.java4
-rw-r--r--src/main/java/org/openslx/dnbd3/status/poller/ServerPoller.java2
-rw-r--r--src/main/java/org/openslx/graph/Edge.java5
-rw-r--r--src/main/java/org/openslx/graph/Graph.java2
6 files changed, 19 insertions, 12 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;
diff --git a/src/main/java/org/openslx/graph/Edge.java b/src/main/java/org/openslx/graph/Edge.java
index 9d03aeb..c896651 100644
--- a/src/main/java/org/openslx/graph/Edge.java
+++ b/src/main/java/org/openslx/graph/Edge.java
@@ -51,6 +51,7 @@ public class Edge implements java.io.Serializable
_health--;
}
_age++;
+ _weight = 0;
}
public boolean isAlive()
@@ -58,9 +59,9 @@ public class Edge implements java.io.Serializable
return _health > 0;
}
- public void setWeight( double weight )
+ public void addWeight( double weight )
{
- _weight = weight;
+ _weight += weight;
_health = _maxHealth;
}
diff --git a/src/main/java/org/openslx/graph/Graph.java b/src/main/java/org/openslx/graph/Graph.java
index 65110f6..7f7ca64 100644
--- a/src/main/java/org/openslx/graph/Graph.java
+++ b/src/main/java/org/openslx/graph/Graph.java
@@ -99,7 +99,7 @@ public class Graph implements java.io.Serializable
_edges.put( edge, edge );
}
// Set the edge weight.
- edge.setWeight( weight );
+ edge.addWeight( weight );
}
// Remove a Node from the Graph, along with all of its emanating Edges.