2013-05-09 16 views
5

Zostało wspomniane w dokumentacji sztormowej, że burza powtarza krotkę, która przerwała przetwarzanie. Moje pytanie brzmi: czy burza zrobi to automatycznie (bez wywoływania fail() na wylewce początkowej), czy raczej jest odpowiedzialna za dziób początkowy, aby powtórzyć krotkę (wywoływana jest funkcja fail() i odtwarzanie powinno być zaimplementowane wewnątrz lub nawet gdzieś zewnętrznie)?Czy ponowne odtworzenie burzy jest krotką, które przetwarzanie zostało przekroczone?

Odpowiedz

6

Aby uzyskać poprawne odtwarzanie po upływie limitu czasu, musisz zakotwiczyć krotkę z identyfikatorem, gdy emitujesz go z dziobka. Kiedy upłynie limit czasu, to, co zostało użyte jako kotwica, zostanie zwrócone do metody fail (fail (object anchorId)). Teraz możesz użyć anchorId z nieudanej/timeoutout tuple, aby powtórzyć grę lub cokolwiek innego, co chcesz zrobić z krotką timeout. Każdy identyfikator kotwicy musi być niepowtarzalny. Przykładem identyfikatora zakotwiczenia jest identyfikator bazy danych. Kiedy krotka nie powiedzie się, możesz użyć identyfikatora bazy danych, aby odtworzyć krotkę i ponownie ją wydać. Aby odpowiedzieć na twoje pytanie, musisz mieć logikę powtórki w niepowodzeniu i możesz użyć anchorId do odtworzenia swojej krotki. Mam nadzieję, że ta informacja pomaga

+0

Czy istnieje sposób, aby dowiedzieć się, która śruba nie powiodła się w metodzie fail() wylewki? Zasadniczo chcę wysłać informacje dotyczące sworznia w krotce, gdy ack() lub fail(). Jak można to zrobić? –

Powiązane problemy