Po rozmowach z kolegą rysiem odpaliłem na czysto GoofyxGrid@home NCI celem wrzucenia do projektu jego aplikacji. Najprawdopodobniej projekt z apką ruszy początkiem przyszłego tygodnia z próbną seria zadań do wykonania.
Bajka – Gnomy rozrabiają
Ja w kinie, bajka, duża pepsi, duży popcorn i…. oni 🙂
Dzień babci i dziadka
W szkole jak co roku coś dla dziadków i babć… rodzice też byli zaproszeni
Kosmetyki strony c.d.
- server_status.php <- pokazuje także ile zapasowych zadań jest u mnie na serwerze domowym (tu oczywiście pracuje u mnie w tle skrypt zliczający)
- index.php <- zaktualizowałem wreszcie sekcje informacyjną o projekcie
GG@H stara strona
Odpaliłem z powrotem starą stronę GoofyxGrid@Home na której są strony ze statystykami z wyników.
Docelowo całość będzie przerobiona na coś bardziej nowoczesnego i dynamicznego
Bajka – Fernando
Nie ma to jak wypad do kina na bajkę… trzeba się odchamić
Dalszy tunning
Wraz ze wzrostem ilości podłączonych hostów miałem coraz większy problem z błędami „gateway time out”, który zwalałem na serwer synology… bo to on służy mi jako reverse proxy i przekierowuje połączenia na serwer boinca.
Niestety przez moje zaślepienie straciłem ponad miesiąc bo zamiast zmienić perspektywę na błąd cały czas szukałem problemy na moim NAS’ie. Rozwiązanie było bardzo proste, a wręcz żenujące… po postawieniu projektu na nowym komputerze nie sprawdziłem standardowej konfiguracji Apache2 (a zawsze jest to jeden z pierwszych kroków jakie robię na nowym linux’ie)… i tak o to wystarczyło ustawić moje standardowe i sprawdzone w boju ustawienia serwera WWW:
StartServers 15 MinSpareThreads 50 MaxSpareThreads 100 ThreadLimit 64 ThreadsPerChild 50 MaxRequestWorkers 8192 MaxConnectionsPerChild 10000
Zapewne można by coś jeszcze lepiej zrobić, ale taka konfiguracja radzi sobie z podłączami hostami na poziomie 250,000 <- a co dopiero przy moich 7,500-8,000
Odciążanie serwera GG@h NCI
Niestety zauważyłem, że w momencie generowania zadań (szczególnie) dla wszystkich 4 aplikacji na raz, serwer nie wyrabia się z żądaniami dla podłączających się do niego komputerów… zaś trzeba było siąść i wymyślić rozwiązanie…
Długo nie musiałem się męczyć, ponieważ zastosowałem wyjście awaryjne jakie od roku stosuje w DrugDiscovery@Home. Całość podejścia polega na tym, iż pliki zadań są generowane u mnie na serwerze i udostępnione dla serwera boincowego po NFS’ie. Na DD@H nie ma problemu z wydajnością serwera za jest problem z wolnym miejscem na dysku <- jedna seria zadań dla sminy i viny to ok.750-800GB. Na GG@h NCI rozwiązanie sprawdziło się idealnie w ten sam sposób… pliki generuje na komputerze z analizatorami które po optymalizacji w zasadzie nie obciążają go, następnie serwer boinca NCI sprawdza co 15-30 minut czy ilość rezerwowych WU nie spadła poniżej 35,000 <- jeśli tak to pobiera 10,000 plików z serwera i robi z nich WU. Dzięki temu projekt działa szybciej i sprawniej. Kolejny mały sukces.
Optymalizacja analizatorów
- Z 8 skryptów, które potrafiły przy większej ilości wyników do analizy zabić komputer przerabiający dane, pozostały 4 uniwersalne skrypty z parametrami. Drugim etapem było uruchamianie skryptów po kolei, zamiast wszystkie na raz.
- Jednak najważniejszym krokiem, który planowałem od ponad 2 lat (a czego nie zrobiłem z braku chęci) było tworzenie przed każdym uruchamianiem analizatorów tabeli tymczasowej z informacją o użytkownikach i plikach wynikowych jakie zwrócili w GG@h NCI. Wprowadzenie tego rozwiązania było prawdziwym kamieniem milowym ponieważ czas jednego zapytania do bazy danych zmniejszył się z nawet 5 minut do 5 sekund <- dosłownie. Teraz można sobie wyobrazić, że każdy analizator robi kilkaset (a czasami kilka tysięcy) takich zapytań. Teraz analizatory przerabiają w 5 minut to co poprzednio w 2 dni.Postęp widać… chyba 😉
Tic-tac-toe 1 v.1.0
Pierwszy wynik zabaw z silnikiem Unity… <- wynik jednego wieczoru.
Nie ma żadnych bajerów ani miodnej grafiki 🙂 ale naukę od czegoś trzeba zacząć.
Jakby ktoś chciał poklikać dla zabawy: Tic-tac-toe 1 v.1.0 (145 pobrań)
Co można w tej wersji:
1. Granie w 2 osoby
2. Na początku pierwszy gracz wybiera jakim znakiem chce grać
Nie wiele, ale początek dobry