This topic applies only to the IBM Business Process Manager Advanced configuration.

Tiempo de espera de conexión al ejecutar un script wsadmin

La ejecución de un script administrativo wsadmin que llama a un MBean en un entorno de despliegue de red produce varias conexiones entre procesos de servidor, como por ejemplo el gestor de despliegue, el agente de nodo o el miembro de clúster utilizando conectores JMX (Java Management Extensions). Algunos scripts administrativos de Business Process Choreographer se pueden ejecutar durante más tiempo que el tiempo de espera de conexión por omisión especificado para el conector que se utiliza. Este comportamiento resulta en mensajes similares al siguiente ejemplo: WASX7017E: Exception received while running file "/raíz_instalación/ProcessChoreographer/admin/script_name"; exception information: javax.management.JMRuntimeException: ADMN0034E: The service is unable to obtain a valid administrative client to connect process "nodeagent" from process "dmgr", because of exception: com.ibm.websphere.management.exception.ConnectorException: ADMC0009E: The system failed to make the SOAP RPC call: invoke.

Razón

Algunos scripts administrativos de Business Process Choreographer pueden realizar operaciones de base de datos en un gran número de objetos de base de datos. Esto significa que se pueden ejecutar durante más tiempo que el tiempo de espera de conexión por omisión. Cuando se ejecuta un script wsadmin con una conexión al servidor, se pueden producir los siguientes tiempos de espera de conexión:
  • Para la llamada desde el entorno de wsadmin al gestor de despliegue. El valor predeterminado es de 180 segundos.
  • Para la conexión del gestor de despliegue al agente de nodo. El valor por omisión es de 600 segundos.
  • Para la conexión desde el agente de nodo al destino de despliegue de tiempo de ejecución. El valor por omisión es de 600 segundos.

Solución

Tiene las opciones siguientes:
  • Modifique los parámetros de invocación de forma que se realice menos trabajo, para que la operación se complete antes exceder el tiempo de espera. Por ejemplo, muchos scripts tienen parámetros que se pueden utilizar para seleccionar menos objetos.
  • Modifique las propiedades para que conector que se utiliza.
    Conector JMX remoto
    Se utiliza este conector entre procesos de servidor que se encuentran en distintas máquinas físicas, por ejemplo, entre el gestor de despliegue y el agente de nodo. El valor por omisión es el conector SOAP.
    Conector JMX local
    Se utiliza este conector entre procesos de servidor que se encuentran en la misma máquina física, por ejemplo, entre el agente de nodo y los servidores de aplicaciones. El valor por omisión es el conector IPC.
    Debe modificar las propiedades del archivo soap.client.props, ipc.client.props o sas.client.prop, y las propiedades personalizadas para el gestor de despliegue y los agentes de nodo donde se estén ejecutando miembros de su destino de despliegue de tiempo de ejecución.
    El ejemplo siguiente muestra cómo cambiar las propiedades del conector SOAP.
    1. Modifique la propiedad com.ibm.SOAP.requestTimeout editando el archivo soap.client.props que se encuentra en el subdirectorio properties del directorio raíz_perfil.

    2. Cambie la propiedad personalizada requestTimeout utilizando la consola administrativa:
      1. Para servidores o miembros del clúster, pulse Servidores > Servidores de aplicaciones > nombre_servidor > Infraestructura del servidor > Administración > Servicios de administración > Propiedades adicionales > Conectores JMX > SOAPConnector > Propiedades adicionales > Propiedades personalizadas, localice la propiedad personalizada requestTimeout y modifique su valor.
      2. Para el gestor de despliegue, pulse Administración del sistema > Gestor de despliegue > Propiedades adicionales > Servicios de administración > Propiedades adicionales > Conectores JMX > SOAPConnector > Propiedades adicionales > Propiedades personalizadas, localice la propiedad personalizada requestTimeout y modifique su valor.
      3. Para los agentes de nodo, pulse Administración del sistema > Agentes de nodo > nombre_agente_nodo > Propiedades adicionales > Servicios de administración > Propiedades adicionales > Conectores JMX > SOAPConnector > Propiedades adicionales > Propiedades personalizadas, localice la propiedad personalizada requestTimeout y modifique su valor.