Questo argomento si applica solo alla configurazione IBM Business Automation Workflow Advanced.

Timeout della connessione durante l'esecuzione di uno script wsadmin

L'esecuzione di uno script di gestione wsadmin che richiama un MBean in un ambiente di distribuzione di rete determina diverse connessioni tra i processi del server, come il gestore distribuzione, l'agent del nodo e il membro cluster che utilizzano i connettori JMX (Java Management Extensions). Alcuni script di gestione di Business Process Choreographer possono essere eseguiti per un periodo di tempo superiore al timeout di connessione predefinito specificato per il connettore utilizzato. Questo comportamento risulta in messaggi simili al seguente esempio: WASX7017E: Exception received while running file "/install_root/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.

Motivo

Alcuni script di gestione di Business Process Choreographer possono eseguire operazioni di database su un numero elevato di oggetti di database. Ciò significa che possono durare più a lungo del timeout di connessione predefinito. Quando uno script wsadmin viene eseguito con una connessione al server, possono verificarsi i seguenti timeout di connessione:
  • Per la chiamata dall'ambiente wsadmin al gestore distribuzione. Il valore predefinito è 180 secondi.
  • Per la connessione dal gestore distribuzione all'agente nodo. Il valore predefinito è 600 secondi.
  • Per la connessione dall'agent del nodo alla destinazione di distribuzione runtime. Il valore predefinito è 600 secondi.

Risoluzione

Si dispone delle seguenti opzioni:
  • Modificare i parametri di richiamo in modo da eseguire meno lavoro, in modo che l'operazione venga completata prima del timeout. Ad esempio, molti script hanno parametri che possono essere utilizzati per selezionare un minor numero di oggetti.
  • Modificare le proprietà per il connettore utilizzato.
    Connettore JMX remoto
    Questo connettore viene utilizzato tra i processi server che risiedono su macchine fisiche differenti, ad esempio, tra il gestore distribuzione e l'agente nodo. Il predefinito è il connettore SOAP.
    Connettore JMX locale
    Questo connettore viene utilizzato tra i processi server che risiedono sulla stessa macchina fisica, ad esempio, tra l'agent del nodo e i relativi server delle applicazioni. Il valore predefinito è il connettore IPC.
    È necessario modificare le proprietà nel file soap.client.props , nei file ipc.client.propso sas.client.prop e le proprietà personalizzate per il gestore distribuzione e gli agent del nodo in cui sono in esecuzione i membri della destinazione di distribuzione di runtime.
    Il seguente esempio mostra come modificare le proprietà del connettore SOAP.
    1. Modificare la proprietà com.ibm.SOAP.requestTimeout modificando il file soap.client.props che si trova nella sottodirectory properties della directory profile_root .

    2. Modificare la proprietà personalizzata requestTimeout utilizzando la console di gestione:
      1. Per i server o i membri del cluster, fare clic su Server > Server delle applicazioni > nome_server > Infrastruttura server > Amministrazione > Servizi di amministrazione > Ulteriori proprietà > Connettori JMX > SOAPConnector > Proprietà aggiuntive > Proprietà personalizzate, individuare la proprietà personalizzata requestTimeout e modificarne il valore.
      2. Per il gestore distribuzione, fare clic su Gestione del sistema > Gestore distribuzione > Proprietà aggiuntive > Servizi di amministrazione > Proprietà aggiuntive > Connettori JMX > SOAPConnector > Proprietà aggiuntive > Proprietà personalizzate, individuare la proprietà personalizzata requestTimeout e modificarne il valore.
      3. Per gli agent del nodo, fare clic su Amministrazione sistema > Agent del nodo > nome_agent_nodo > Ulteriori proprietà > Servizi di gestione > Ulteriori proprietà > Connettori JMX > SOAPConnector > Proprietà aggiuntive > Proprietà personalizzate, individuare la proprietà personalizzata requestTimeout e modificarne il valore.