diff --git a/VerteilteSysteme-Examples/.classpath b/VerteilteSysteme-Examples/.classpath index 2cfb9f7..109c90d 100644 --- a/VerteilteSysteme-Examples/.classpath +++ b/VerteilteSysteme-Examples/.classpath @@ -1,23 +1,24 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/VerteilteSysteme-Examples/build/RMIEchoServer.jar b/VerteilteSysteme-Examples/build/RMIEchoServer.jar index bd41715..ceed2e8 100644 Binary files a/VerteilteSysteme-Examples/build/RMIEchoServer.jar and b/VerteilteSysteme-Examples/build/RMIEchoServer.jar differ diff --git a/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar b/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar index e74bfaa..34f6374 100644 Binary files a/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar and b/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPPerfServer.jar b/VerteilteSysteme-Examples/build/TCPPerfServer.jar index d991ef9..f43c7f4 100644 Binary files a/VerteilteSysteme-Examples/build/TCPPerfServer.jar and b/VerteilteSysteme-Examples/build/TCPPerfServer.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPServer.jar b/VerteilteSysteme-Examples/build/TCPServer.jar index 2564bba..64b3685 100644 Binary files a/VerteilteSysteme-Examples/build/TCPServer.jar and b/VerteilteSysteme-Examples/build/TCPServer.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPServerMulti.jar b/VerteilteSysteme-Examples/build/TCPServerMulti.jar index 846cbbd..9813757 100644 Binary files a/VerteilteSysteme-Examples/build/TCPServerMulti.jar and b/VerteilteSysteme-Examples/build/TCPServerMulti.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar b/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar index 95823da..ee48f1b 100644 Binary files a/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar and b/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar differ diff --git a/VerteilteSysteme-Examples/build/UDPServer.jar b/VerteilteSysteme-Examples/build/UDPServer.jar index 631b8fc..474f081 100644 Binary files a/VerteilteSysteme-Examples/build/UDPServer.jar and b/VerteilteSysteme-Examples/build/UDPServer.jar differ diff --git a/VerteilteSysteme-Examples/build/UDPServerMulti.jar b/VerteilteSysteme-Examples/build/UDPServerMulti.jar index c592bc4..0ee2d16 100644 Binary files a/VerteilteSysteme-Examples/build/UDPServerMulti.jar and b/VerteilteSysteme-Examples/build/UDPServerMulti.jar differ diff --git a/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar b/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar index b9fe196..85aeb33 100644 Binary files a/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar and b/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar differ diff --git a/VerteilteSysteme-Examples/lib-aws/jedis-2.9.0.jar b/VerteilteSysteme-Examples/lib-aws/jedis-2.9.0.jar new file mode 100644 index 0000000..f4d27d3 Binary files /dev/null and b/VerteilteSysteme-Examples/lib-aws/jedis-2.9.0.jar differ diff --git a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java index ee4b31c..0abbae7 100644 --- a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java +++ b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java @@ -9,14 +9,12 @@ import java.net.Socket; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; +import redis.clients.jedis.Jedis; class TCPTimeCounterServer { - // Variable für Zählerstand des Servers, dieser Zähler wird durch Anfragen der - // Clients erhöht - private static long counter = 0; - public static void main(String args[]) throws Exception { int tcpPort = 36038; + String redisClusterURL = "vertsys-ec1-0001-002.71rxr9.0001.euc1.cache.amazonaws.com"; DateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); // Socket erzeugen @@ -35,8 +33,20 @@ class TCPTimeCounterServer { // Vom Client gesendete Zahl einlesen und auf aktuellen Zählerstand addieren long number = new Long(new String(inFromClient.readLine())); - counter += number; + // Verbindung zum Redis Cluster (Amazon ElastiCache) + Jedis jedis = new Jedis(redisClusterURL, 6379); + System.out.println("Connected to redis server"); + // check whether server is running or not + //System.out.println("redis server is running: " + jedis.ping()); + //System.out.println("redis server cluster info: " + jedis.clusterInfo()); + // Variable für Zählerstand des Servers, dieser Zähler wird durch Anfragen der + // Clients erhöht + jedis.incrBy("vertsys-counter", number); + long counter = new Long(jedis.get("vertsys-counter")); + jedis.close(); + + System.out.println("TTL:" + jedis.ttl("vertsys-counter")); System.out.println("Anfrage von Client " + connectionSocket.getInetAddress() + ":" + connectionSocket.getPort() + " Zahl: " + number + " Zählerstand: " + counter); // Try/Catch hinzugefügt, nachdem bei Einsatz Amazon AWS (Healthcheck des ELB) clientSentence null war @@ -51,7 +61,7 @@ class TCPTimeCounterServer { ioe.printStackTrace(); } catch (NullPointerException npe) { npe.printStackTrace(); - } + } } } }