-
Data: 2012-02-18 20:53:12
Temat: Re: procedura tworzenia programów
Od: Bronek Kozicki <b...@s...net> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 17/02/2012 21:55, A.L. wrote:
> Programwoanie w parch to paranoja. Jedyna forma programwoanai w parach
> ktora znam to nie taka ze dwoch pracuje nad tym samym problemem, ale
przypomniał mi się taki przykład: program miał wiele wątków roboczych i
każdy wątek ma własne połączenie TCP do publikacji wyników obliczeń.
Równolegle było wykonywanych paręset "strumieni" obliczeń, praca
zdarzeniowa, żaden wątek nie przypisany do konkretnego "strumienia" a
więc, siłą rzeczy, żaden strumień nie ma własnego połączenia TCP (liczba
wątków i połączeń TCP znacznie mniejsza od liczby "strumieni" obliczeń
to konieczność wynikające z ograniczeń sieci i maszyny). Często nowe
wyniki obliczeń są w odstępach milisekundowych, czasami częsciej.
Połączenia TCP do publikacji wyników są do procesu "multipleksera",
każdy subskrybent ma do niego jedno własne połączenie TCP. No i w
efekcie czasami subskrybenci otrzymują efekty obliczeń dla "strumieni"
którymi są zainteresowani w odwróconej kolejności (dokładnie dlaczego
tak się dzieje, pozostawiam jako ćwiczenie dla czytelnika). Rozwiązanie
proste, zrobić osobną pulę połączeń TCP i przypisać każdy "strumień" do
jednego połączenia w puli.
Żeby rozważyć problem robię sobie sesję chat z kolegą (który pracuje w
Australi) i podajemy swoje rozwiązania. Moje jest bardziej
skomplikowane, bo dodatkowo balansuje ruch w momentach mniejszej
aktywności. Kolegi jest prostsze. Dyskusja 15-30min i już wiemy co robić
(to prostsze, ale z pomiarem kosztu braku balansowania ruchu). Potem ja
programuję, testuję, 2godz później proszę kolegę o przeczytanie patcha
jakieś 50wierszy i szukamy gdzie mogą być błędy (liczenia hasha z "nazwy
strumienia" daje negatywne wartości bo zapomniałem że czasami "char"
jest signed). Później jeszcze jeden drobiazg, proszę zupełnie innego
kolegę o sprawdzenie mojego kodu (bo ten w Australi już śpi). Potem
wszystko jest już w moim ręku, kolega następnego dnia tylko proponuje
drobne poprawki.
Czyli "programowanie parami", ale takie że odległość między
programistami to czasami >16000 km a czasami kilka metrów, programuje
jeden, a tylko początek i zakończenie jest wspólne.
Ja to nazywam "praca zespołowa", ale chyba jestem mało nowoczesny.
B.
Następne wpisy z tego wątku
- 18.02.12 23:18 Andrzej Jarzabek
- 18.02.12 23:22 Andrzej Jarzabek
- 18.02.12 23:23 Andrzej Jarzabek
- 18.02.12 23:27 Andrzej Jarzabek
- 18.02.12 23:28 Andrzej Jarzabek
- 19.02.12 09:26 M.M.
- 19.02.12 11:43 Andrzej Jarzabek
- 19.02.12 12:31 Andrzej Jarzabek
- 19.02.12 14:29 Jacek
- 19.02.12 14:33 Bronek Kozicki
- 19.02.12 14:40 bartekltg
- 19.02.12 15:33 Andrzej Jarzabek
- 19.02.12 15:37 A.L.
- 19.02.12 15:45 A.L.
- 19.02.12 16:03 Jacek
Najnowsze wątki z tej grupy
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
Najnowsze wątki
- 2025-05-12 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-05-12 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-05-12 Warszawa => Spedytor Międzynarodowy <=
- 2025-05-12 kolizja na chodniku nie ma odszkodowania
- 2025-05-12 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-05-12 presja na aplikacje i blik
- 2025-05-12 czy znacie bardziej popierdolone sieci niż polskie?
- 2025-05-12 czy znacie bardziej popierdolone sieci niż polskie?
- 2025-05-11 Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- 2025-05-11 Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- 2025-05-11 obca rejestracja budzi agresję
- 2025-05-11 Po nie udanej próbie egzekucji: Nigeryjczyk, który chciał zabić Polaka, nie odpowie za atak
- 2025-05-10 Szczecin => Key Account Manager IT <=
- 2025-05-10 Rudno => Administrator sieci IT <=
- 2025-05-10 Wrocław => Controlling systems Consultant <=