Zapoznanie się z programowanie rozproszonym
Transkrypt
Zapoznanie się z programowanie rozproszonym
Zapoznanie się z programowanie rozproszonym - implementacja węzła do testów algorytmów i wydajności w środowisku rozproszonym Przygotować aplikację, w wybranym języku obiektowym, posiadającą następującą funkcjonalność: • Aplikacja posiada ServerSocket, który oczekuje na połączenia. • Aplikacja przyjmuje na wejściu dane tekstowe w postaci csv, gdzie dane są odseparowane znakiem ';'. Wartości zmiennoprzecinkowe w notacji amerykańskiej. Dane przechowywane są w macierzy o rozmiarze określonym przez dane. Macierz identyfikowana jest przez klucz wysyłany w pierwszej linii. • Aplikacja posiada metodę, która na wejściu i na wyjściu posiada mapy macierzy. Metoda wywoływana jest na podstawie zaprogramowanej akcji. • Aplikacja umieszcza wynik przetwarzania w macierzy, która jest serializowana do formatu csv. Po wykonaniu przetwarzania aplikacja wysyła wynik do jednego lub więcej węzłów o określonych jako parametr adresach IP w analogicznym formacie jak format na wejściu. • Aplikacja rejestruje czas przetwarzania. • Aplikacja rejestruje czas odpowiedzi. • Aplikacja wyświetla średni czas przetwarzania danych, co 10 sekund na terminalu. • Aplikacja wyświetla średni czas odpowiedzi, co 10 sekund na terminalu. Przykładowa ramka KSIĄŻKI Jules; Verne; Wokół Księżyca; 1869 Shelley; Mary; Frankenstein;1818 Implementacja w Java • java.net.Socket • java.net.ServerSocket Implementacja .NET • System.Net • System.Net.Sockets Implementacja C++ • #include <netinet/in.h> © Poznań University of Technology, author: Radosław Ziembiński 1