Aktywne Wpisy
Toshikate +22
#emigracja #holandia #praca #pracbaza #jedzenie #jedzzwykopem #gotujzwykopem
Od miesiąca jestem w Holandii i kurde to co tu można znaleźć w sklepach to naprawdę jest jakaś #!$%@? albo ja coś źle robię lub nie przywykłem XD Mięso mielone jak się kupi to mdłe jakieś wychodzi, chleb miękki tak że można go w rękach uformować w kulkę, wędliny to w
Od miesiąca jestem w Holandii i kurde to co tu można znaleźć w sklepach to naprawdę jest jakaś #!$%@? albo ja coś źle robię lub nie przywykłem XD Mięso mielone jak się kupi to mdłe jakieś wychodzi, chleb miękki tak że można go w rękach uformować w kulkę, wędliny to w
szzzzzz +18
Jadem dzis ciapongiem do Warszawy!!!
W jaki sposób łączy się je w jedno i balansuje obciążenie/ruch?
A co się dzieje, jeżeli maszyny nie są identyczne?
Założenie jest takie, że serwer obsługuje różnych klientów którzy łączą się do niego przez sieć i dostają od niego zadania do przeliczenia.
#klastry #programowanie też trochę wołam, bo chcę coś w tym stylu sam zacząć ale szukam inspiracji bo nie wiem czy mój pomysł jest ok.
Komentarz usunięty przez autora
Idea jest taka, że jest jeden serwer do którego łączą się maszyny klienckie przez aplikację, aplikacja wykonuje wszystkie obliczenia itd. i odsyła rezultat do serwera.
Bardziej chodziło mi o to w jaki sposób prawidłowo rzucać zadania. Czy zawalić klientów danymi i czekać aż wszystko się przeliczy czy wysyłać i odbierać pojedynczo...
+ pewnie jakieś szczególiki i informacje do projektowania całości są gdzieś.
A tak bardziej serio, to chodzi Ci o sposoby dystrybucji pracy między jakimś węzłem master, a N węzłami slave?
Ogólnie to nie są trywialne problemy, a rozwiązanie zależy od specyfiki konkretnego zadania.
Na przykład jeśli masz M zadań, o których wiesz, że mają taką samą złożoność, to możesz od razu rozesłać każdemu
@UsyDev: Z racji koła jakiś tam dostęp do katedry mam, więc myślę że złapać kogoś i wypytać to nie będzie problem ( ͡° ͜ʖ ͡°)
Dzięki za opis.
Zadanie jest identyczne, ale od losowości zależy który z dwóch warunków zakończy wykonanie. Do tego dochodzi to, że może przyłączyć się
To jest jakiś projekt na studia, konkurs jakiś, czy coś?
Nie, dla siebie to robię. Tak mniej więcej to zaczęło się przez projekt na pp (kazali napisać tetrisa). Stwierdziłem, że napiszę
Docelowo chcę to napisać tak, żeby w łatwy sposób przepisać kod i przeprowadzać dowolne obliczenia dające rozbić się na wiele równoległych zadań.
Najlepiej to
Ambitnie... bardzo dobrze :>
Imo tak naprawdę timeout nie jest potrzebny, wystarczy pamiętać listę zadań do wykonania, zadań wysłanych, ale bez odpowiedzi i zadań jeszcze nie wysłanych.
Jeśli masterowi skończą się zadania jeszcze nie wysłane, to ponownie zaczyna wysyłać zadania wysłane, ale na które jeszcze nie otrzymał odpowiedzi. Jak któryś ze slave'ów odpowie, to master zapisuje sobie jego wynik, a jeśli później inny slave odeśle odpowiedź na to samo zadanie, to najwyżej może zostać zignorowany, lub wykorzystany do porównania, czy odpowiedź od poprzedniego slave'a była taka sama.
@UsyDev: W zasadzie to to już działa, teraz tylko piszę GUI żeby wizualizować to co się dzieje, a nie dostawać tylko wynik w postaci tekstowej ( ͡° ͜ʖ ͡°)
Przy takim wywoływaniu obawiam się zablokowania działania całego "klastra". Nie potrafię dokładnie sformułować dlaczego i w jaki
No ok, jeśli obliczenia mogą trwać bardzo długo, to mogłoby dojść do sytuacji, w której master roześle to samo zadanie do wszystkich slave'ów, każdy z nich będzie je liczył, ale w tym czasie żaden jeszcze nie zwróci odpowiedzi.
Żeby tego uniknąć można zastosować jakieś wiadomości kontrolne, cyklicznie przesyłane do mastera, mówiące czy slave nadal nad tym pracuje i jaki jest jego progres (np.
Sieć będzie leciała po servletach zamiast przez gotowy serwer. Znajdzie się jeszcze kilka takich kwiatków.