eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plFinanseGrupypl.biznes.bankiprzelewy wewnetrzne ING - dlaczego opozniane? › Re: przelewy wewnetrzne ING - dlaczego opozniane?
  • Data: 2009-11-16 12:05:49
    Temat: Re: przelewy wewnetrzne ING - dlaczego opozniane?
    Od: "witrak()" <w...@h...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 2009-11-16 12:26, Tomek z Wawy wrote:
    > On 16 Lis, 12:07, "witrak()" <w...@h...com> wrote:
    >
    >> Z drugiej strony, jeżeli proces obsługi użytkownika sam wykonuje
    >> transakcje (w przeciwieństwie do przypadku, kiedy tylko zostawia
    >> zlecenie w kolejce zleceń do wykonania), to w chwili zakończenia
    >> takiego procesu zlecenie jest już zawsze zrealizowane (z takim, czy
    >> innym wynikiem). Innymi słowy, wyświetlenie formatki informującej,
    >> że zlecenie się zakończyło, następuje dopiero, gdy faktycznie w
    >> bazie danych banku stany odpowiednich kont zostały zmodyfikowane:
    >> *nigdy nie ma* sytuacji, w której na poziomie interfejsu użytkownika
    >> sygnalizowane jest zakończenie operacji, a sam przelew nie został
    >> wykonany, bo tkwi w kolejce.
    >
    > Że to poprawia komfort dla użytkownika to chyba wszyscy będą zgodni,
    > ale czy to jest całkowicie bezpieczne i dobre rozwiązanie? Np. milion
    > osób w tym samym momencie zatwierdza zlecenie kupna akcji i
    > jednocześnie inny milion zatwierdza przelew. 2 mln niezależnych bytów

    Przesada :-) Jak zsynchronizować tę liczbę uzytkowników ? - wg
    sygnału czasu w południe ?
    Zresztą system bankowy limituje liczbę jednocześnie zalogowanych
    klientów...

    > próbuje jednocześnie wykonać transakcje na tej samej bazie. Tak czy
    > inaczej staną w kolejce lub część z nich się wykrzaczy, jak to ma
    > czasem miejsce w mB.

    Te procesy obsługi staną w kolejce do bazy danych, a nie w kolejce
    do systemu wykonywania przelewów. To jest różnica, bo systemy
    bazodanowe są budowane z myślą o takich sytuacjach i same w sobie
    nie prowadzą do wykrzaczania procesów.
    Wykrzaczanie może następować na poziomie procesów obsługi klienta,
    ze względu na przekroczenie czasu obsługi operacji bazodanowej, albo
    jakiejś innej. Jeśli to pierwsze, to proces ma szanse poinformować
    klienta (że się nie udało wykonać zlecenia); jeśli to drugie, to
    albo już jest po wykonaniu przelewu (tylko klient o tym nie wie, ale
    próbując powtórzyć operację dowie się na 100%), albo jeszcze go nie
    zlecono (operacja bazodanowa jeszcze nie została skierowana do bazy
    danych). W każdym przypadku klient nie jest zagrożony, co więcej
    wie, czy przelew poszedł, czy nie.

    Niemniej jednak może się zdarzyć, że przeciętny czas wykonania
    procesu obsługi wydłuży się znacznie - ale klient to zauważy: powie
    "system się muli..." i albo zrezygnuje z pracy albo będzie
    cierpliwie czekał na rezultat zleconej operacji (zawsze jednak z
    jednoznacznym wynikiem).

    W systemie z kolejkowaniem jest gorzej: zerwanie operacji zaraz po
    zakolejkowaniu zlecenia, ale przed powiadomieniem o tym, że
    zakolejkowanie się udało, grozi próbą zainicjowania przez
    niecierpliwego klienta zlecenia przelewu po raz drugi (miałem to
    parę razy w EB, ale w końcu poprawili coś w systemie i zrywanie
    operacji stało się rzadkością).


    witrak()

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