eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingprocedura tworzenia programówRe: procedura tworzenia programów
  • 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.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: