Język

IPlaybackControl Interfejs

Definicja

Funkcje w składnikach w kolejce w nietypowej obsłudze błędów odtwarzania po stronie serwera i błędów po stronie klienta mechanizmu dostarczania kolejkowania komunikatów.

public interface class IPlaybackControl
[System.Runtime.InteropServices.Guid("51372AFD-CAE7-11CF-BE81-00AA00A2FA25")]
[System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)]
public interface IPlaybackControl
[<System.Runtime.InteropServices.Guid("51372AFD-CAE7-11CF-BE81-00AA00A2FA25")>]
[<System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)>]
type IPlaybackControl = interface
Public Interface IPlaybackControl
Atrybuty

Uwagi

Klasa wyjątków zdefiniowana dla składnika w katalogu COM+ implementuje zarówno interfejs dla oryginalnej klasy, jak IPlaybackControl i interfejs. Implementacje metody oryginalnego interfejsu klasy służą do wykonywania obsługi wyjątków dla metod, które zakończyły się niepowodzeniem w samej klasie. Będą one wywoływane po FinalClientRetry lub FinalServerRetry do przetwarzania wyjątków dla metody pierwotnie wywoływanej.

Odtwarzacz składników w kolejce wywołuje metody IPlaybackControl , aby poinformować obiekt obsługi wyjątków, że komunikat ma zostać umieszczony w końcowej kolejce spoczynku lub utraconych komunikatów. Odtwarzacz składników w kolejce wywołuje tę samą metodę w obiekcie obsługi wyjątków, który zakończył się niepowodzeniem w oryginalnym wywołaniu metody. Obiekt obsługi wyjątków może zaimplementować alternatywę, na przykład przez zebranie informacji o diagnozowaniu problemu lub wygenerowanie obiektu lub komunikatu informującego klienta o problemie. Jeśli aplikacja nie implementuje IPlaybackControl, komunikat trucizny jest umieszczany w końcowej kolejce spoczynku lub utraconych listów, gdy odtwarzacz składników w kolejce wyczerpuje wszystkie próby.

Komunikat trucizny jest komunikatem, którego nie można przetworzyć z jakiegoś powodu, być może z powodu problemu z serwerem lub systemem kolejkowania. Transakcja jest cofana, a komunikat trucizny przechodzi do góry kolejki. Gdy komunikat zostanie ponownie w kolejce, wystąpi ten sam warunek. Ten komunikat może kontynuować pętlę w nieskończoność, dopóki coś nie zostanie zrobione w celu rozwiązania problemu. Usługa Składniki w kolejce obsługuje komunikat trucizny przy użyciu serii ponownych prób. Po kilku niepomyślnych ponownych próbach komunikat zostanie przeniesiony do ostatniej kolejki spoczynku. Komunikaty otrucia pozostają w kolejce pozostałej do momentu ręcznego przeniesienia przy użyciu narzędzia Mover komunikatów składników w kolejce.

Sytuację komunikatu trucizny można również rozwiązać programowo, używając FinalServerRetry metody , która informuje autora składnika po stronie serwera, że wszystkie próby odtworzenia odroczonej aktywacji nie powiodły się.

Jeśli wykryjesz zatruty komunikat, możesz szybko rozwiązać podstawową przyczynę problemu. Jeśli na przykład serwer był w trybie offline z jakiegoś powodu, możesz przywrócić serwer do trybu online. Jeśli nie możesz szybko rozwiązać problemu, możesz automatycznie wygenerować kolejną transakcję, która powiadamia osobę żądającą o tym, że transakcja nie wystąpiła. Żądający może następnie dokonać transakcji wyrównywczej, która odwraca efekt transakcji, która już została zatwierdzona.

Metody

Nazwa Opis
FinalClientRetry()

Informuje składnik obsługi wyjątków po stronie klienta, że wszystkie próby kolejkowania komunikatów w celu dostarczenia komunikatu do serwera zostały odrzucone, a komunikat zakończył się w kolejce Xact Dead Letter po stronie klienta.

FinalServerRetry()

Informuje implementację klasy wyjątków po stronie serwera, że wszystkie próby odtworzenia odroczonej aktywacji na serwerze nie powiodły się, a komunikat ma zostać przeniesiony do końcowej kolejki odpoczynku.

Dotyczy