Wywołaj transakcje

Wywołaj transakcje – służy do wywoływania co najmniej 1 polecenia klastra w węźle docelowym. Przypomina to zdalne wywołania procedur wykonywane na polecenie zdefiniowane w klastrze.

W podobny sposób do zapisywania transakcji wywoływanie transakcji obsługuje transakcje czasowe i nieterminowe. Więcej informacji o transakcjach czasowych znajdziesz w sekcji Działania zaplanowane i nieokreślone.

Wywołaj transakcję, której czas nie został rozpoczęty

Kolejność operacji nieokreślonej wywołania transakcji
Rysunek 1. Wywołana transakcja nieokreślona w czasie

Wywołaj działanie żądania

Kierunek: Inicjator -> Cel

Podobnie jak w przypadku działań żądania odczytu i żądania zapisu, w tej akcji inicjator udostępnia obiektowi docelowemu:

  • Wywołuj żądania: lista ścieżek do poleceń klastra oraz opcjonalne argumenty poleceń o nazwach Pola poleceń.
  • Żądanie opóźnione: flaga wskazująca, czy dane działanie jest częścią transakcji dotyczącej wywołania zaplanowanego.
  • Suppress Response: flaga wskazująca, czy działanie wywołania odpowiedzi powinno zostać pominięte.
  • Interaction ID (Identyfikator interakcji): liczba całkowita używana do dopasowania działania wywołania żądania do działania w odpowiedzi

Wywołaj działanie odpowiedzi

Kierunek: Kierowanie -> Inicjator

Gdy obiekt docelowy otrzyma akcję żądania wywołania, zakończy transakcję za pomocą działania polegającego na wywołaniu odpowiedzi:

  • Wywołaj odpowiedzi: lista odpowiedzi na polecenia lub stanu dla każdego wysłanego żądania wywołania.
  • Identyfikator interakcji: liczba całkowita używana do dopasowania działania wywołania odpowiedzi do działania wywołania żądania.

Nieograniczone czasowo ograniczenia wywoływania

Wywołaj akcję żądania, ale w tym przypadku musi być ustawiona flaga Suppress Response. Dzieje się tak, ponieważ w przeciwnym razie sieć może zostać zapełniona jednoczesnymi odpowiedziami wszystkich członków grupy.

Aby umożliwić to zachowanie, ścieżka używana na liście Wywołaj żądania może zawierać grupy lub symbole wieloznaczne, ale tylko w polu Punkt końcowy. Co więcej, jeśli akcja ma postać Groupcasta, transakcja kończy się bez odpowiedzi.

Transakcje wywoływane z opóźnieniem

Podobnie jak w przypadku transakcji zapisu z ustawieniem czasu, transakcje związane z wywołaniem opóźnionym również zaczynają się od działania dotyczącego żądania zaplanowanego.

Kolejność operacji związanych z wywołaniem opóźnionym
Rysunek 2. Wywołana transakcja opóźniona

Działanie żądania zaplanowanego

Kierunek: Inicjator -> Cel

Inicjator rozpoczyna transakcję, która wysyła tę akcję zawierającą:

  • Czas oczekiwania: liczba milisekund, które mogą pozostać otwarte. W tym czasie następne działanie wysłane przez inicjatora zostanie uznane za prawidłowe.

Po odebraniu działania żądania zaplanowanego użytkownika obiekt docelowy musi potwierdzić tę czynność za pomocą stanu odpowiedzi. Gdy inicjator otrzyma odpowiedź o braku błędów, wysyła żądanie wywołania żądania.

Wywołaj działanie żądania

Tak samo jak w przypadku opisanej wcześniej opcji Wywołaj działanie żądania.

Wywołaj działanie odpowiedzi

Tak samo jak w przypadku opisanej wcześniej opcji Wywołanie odpowiedzi.

Ograniczenia dotyczące wywołań czasowych

Wszystkie polecenia wywołania mogą być wywoływane w przypadku interakcji czasowej. Działanie w ramach żądania zaplanowanego, Wywołanie żądania i Wywołanie odpowiedzi są dostępne tylko dla Unicast, więc nie można ich używać jako grupowania w przypadku transakcji terminowych.

Działanie wywołania żądania obsługuje używanie ścieżek z grupami, a także symboli wieloznacznych. Działanie związane z odpowiedzią nie obsługuje symboli wieloznacznych.