Las invocaciones de transacciones se usan para invocar uno o más comandos de clúster en un Nodo de destino. Es similar a las llamadas de procedimientos remotos realizadas a un comando definido. en el clúster.
De manera similar a Write Transactions, admite la compatibilidad con Invoke Transactions Transacciones cronometradas y sin tiempo. Consulta el Acciones con y sin tiempo para obtener más información sobre las transacciones con límite de tiempo.
Transacción de invocación sin tiempo
Invocar la acción de solicitud
Dirección: Iniciador -> Objetivo
Al igual que con las acciones de solicitud de lectura y de solicitud de escritura, en esta acción el Iniciador proporciona al Objetivo:
- Invoca solicitudes: una lista de rutas de acceso. para comandos de clúster, así como argumentos opcionales para los comandos, denominados Campos de comando.
- Solicitud con tiempo: una marca que indica si esta acción es parte de una solicitud Invocar transacción
- Suprimir respuesta: una marca que indica si la acción de invocación de respuesta debe suprimirse.
- ID de interacción: Es un número entero que se usa para hacer coincidir la acción de solicitud de invocación con la acción de invocación de respuesta.
Invocar acción de respuesta
Dirección: Objetivo -> Iniciador
Después de que el destino reciba la acción de solicitud de invocación, finalizará el con una acción de respuesta de invocación que lleve lo siguiente:
- Respuestas de invocación: una lista de respuestas de comando o estados de cada invocación que se envió la solicitud.
- ID de interacción: un número entero que se usa para hacer coincidir la acción de invocación de respuesta con la acción de invocación de solicitud.
Restricciones de invocaciones sin tiempo
La acción de invocación de solicitud puede ser una agrupación, pero, en este caso, la de Suprimir Se debe establecer la marca de respuesta. La lógica es que, de lo contrario, la red podría estar inundado de respuestas simultáneas de cada miembro de un grupo.
Para habilitar este comportamiento, la ruta de acceso que se usa en la lista Solicitudes de invocación puede contener Grupos y, como alternativa, pueden contener comodines, pero solo en el endpoint . Además, si la acción es groupcast, esta transacción finaliza sin respuesta.
Transacciones de invocación programada
Al igual que las transacciones de escritura con marca de tiempo, las transacciones de invocación con tiempo también comienzan con la acción de solicitud temporizada.
Acción de solicitud programada
Dirección: Iniciador -> Objetivo
Un iniciador inicia la transacción enviando esta acción que contiene lo siguiente:
- Tiempo de espera: Cantidad de milisegundos que puede permanecer abierta esta transacción Durante este período se considerará válida la siguiente acción enviada por el Iniciador.
Una vez recibida la Acción de solicitud temporizada, el Objetivo debe confirmar Acción de solicitud programada con una acción de respuesta de estado. Una vez que el Iniciador recibe una Acción de respuesta de estado que informa que no hay errores, enviará una solicitud de invocación Acción.
Invocar la acción de solicitud
Igual que en la sección Invocar acción de solicitud que se describió anteriormente.
Invocar acción de respuesta
Igual que la acción de invocación de respuesta que se describió anteriormente.
Restricciones de invocaciones programadas
Se puede llamar a todos los comandos de invocación en una interacción temporizada. La solicitud temporizada las Acción de invocación de solicitud y Respuesta de invocación Solo Unicast; por lo tanto, no se puede usar como agrupación en grupo en Timed Invoca Transactions.
La acción de solicitud de invocación admite el uso de rutas de acceso con Grupos, así como comodines, pero la acción de respuesta de invocación no admite el uso de comodines.