bug się rodzi

No to wyhodowałem pierwszego poważniejszego buga 😉 No pewnie mam ich jeszcze parę, ale ten jest dość spektakularny. W ciągu kilkunastu sekund plik z logiem aplikacji spuchł mi do 1.3GB 😀 Problem występuje w momencie wyłączenia serwera. A klient stara się do niego dostukać. Bardzo szybko 😉     2016-03-16 23:02:51 WARNING Blad tworzenia socketu 2016-03-16… Czytaj dalej bug się rodzi

Przesyłanie danych od klienta

Mam już coś co działa. htop po lewej przedstawia stronę klienta. Są odpalone 3 procesy spine: główny oraz sender i reciver. Po prawej stronie htop pokazuje stronę serwera – tutaj są dwa procesy: główny, oraz reciver. Klient zawsze odpala jeden proces więcej ponieważ na bieżąco będzie aktualizował stan serwera. Na dole są logi serwera. Widać… Czytaj dalej Przesyłanie danych od klienta

big step

Ok. Żarty się skończyły 🙂 aby ruszyć dalej muszę teraz zaprogramować mechanikę wysyłania i odbierania danych. Dwa odrębne kanały. Będzie się działo. Jeszcze tego nie robiłem 🙂 Po przemyśleniach wszystko wskazuje na to, że stronę serwera i klienta da się obsłużyć tym samym kodem. Z tą różnicą, że serwer będzie jeszcze komunikował się z bazą… Czytaj dalej big step

Format logów

Przetwarzanie informacji zawartych w logach może stać się prawdziwą udręką jeśli jest w nich bałagan. Trzymanie się jednego spójnego formatu jest rzeczą, na którą chcę w tym projekcie położyć szczególny nacisk. Logi będą wyglądały w ten sposób: 2016-03-12 10:54:01 [INFO] (main) Spine-Agent startuje…. 2016-03-12 10:54:01 [INFO] (sender) sender …. Done 2016-03-12 10:54:01 [INFO] (reciver) reciver… Czytaj dalej Format logów

Szkielet agenta

Myślę, że już mam gotowy szkielet programu w którym będę osadzał już kolejne funkcje, dokładał kolejne funkcjonalności. Po odpaleniu programu w systemie uruchamiają się trzy procesy. Procesem nadrzędnym jest spine-agent. Wywołuje on następujące procesy: spine-reciver: Ten proces będzie odpowiedzialny za modyfikowanie plików konfiguracyjnych na serwerze oraz pośrednio za przeładowywanie konfiguracji spine-sender: Zgodnie z interwałem czasowym… Czytaj dalej Szkielet agenta

Koncepcja komunikacji client /server

Po przemyśleniach doszedłem do wniosku, że jednak komunikacja klienta bezpośrednio z serwerem bazy danych nie jest do końca dobrym pomysłem. Sporą wadą takiego podejścia jest to, że trzeba otworzyć połączenie do bazy danych być może nawet publicznie w internecie. Zdecydowałem, że po stronie serwera będzie trzeba uruchomić kod, który będzie komunikował się ze stroną kliencką.… Czytaj dalej Koncepcja komunikacji client /server

Opracowywanie koncepcji

Ok, zaczynam kodować nowy projekt. Będzie to system zarządzalny z poziomu przeglądarki, który umożliwi użytkownikowi konfigurację takich usług jak serwer WWW, FTP, poczta, DNS… Być może w przyszłości powstaną też moduły do obsługi innych usług. Ale od czegoś trzeba zacząć 🙂 Zasada działania będzie prosta. Frontendem będzie panel WWW do którego będzie się logował użytkownik.… Czytaj dalej Opracowywanie koncepcji