Cómo evitar el tiempo de espera y las excepciones por falta de memoria durante la instalación o despliegue

Debido a que los servicios de integración avanzada pueden aumentar el tamaño de un kit de herramientas de una aplicación de proceso, la instalación de instantáneas puede sufrir una anomalía con una excepción de tiempo de espera o falta de memoria.

Acerca de esta tarea

Una excepción de tiempo de espera puede suceder cuando el tamaño de la aplicación de proceso o del kit de herramientas impide que se complete la instalación en el tiempo asignado (de forma predeterminada, 720 segundos). Cuando sucede esta excepción, puede ver un mensaje como el siguiente en el registro del servidor:
CWPFD2064W: A timeout occurred during processing of the job
With a root cause: WTRN0124I: When the timeout occurred the thread with which the transaction ... sun.misc.Unsafe.park(Native Method)
Una excepción por falta de memoria puede suceder cuando el tamaño de la aplicación de proceso o del kit de herramientas supera la memoria disponible durante la instalación. Durante el proceso de instalación, el programa de utilidad serviceDeploy (utilizado para el contenido del servicio de Advanced Integration) es invocado para cada módulo de Service Component Architecture (SCA) en la aplicación de proceso. El procedimiento predeterminado de serviceDeploy es que se ejecute en el mismo proceso. Cuando se produce esta excepción, se puede ver un mensaje como el siguiente en el registro del servidor:
CWPFD1300E: Service deploy failed with return code 3 
With a root cause: java.lang.OutOfMemoryError
Para solucionar o evitar estos errores, utilice las siguientes propiedades del sistema de máquina virtual Java (JVM) para alterar temporalmente el comportamiento predeterminado del sistema:
  • com.ibm.bpm.pal.deploy.timeout

    Utilice esta propiedad para establecer un nuevo valor de tiempo de espera para la instalación. El valor se especifica en segundos. Para volver al comportamiento predeterminado, suprima la propiedad del sistema o establezca el valor en 720.

  • com.ibm.bpm.fds.sca.deploy.outOfProcess

    Establezca el valor de esta propiedad en verdadero para que serviceDeploy se ejecute en un proceso nuevo para cada módulo de SCA en la aplicación de proceso. Tenga en cuenta que esto ocasiona una notable degradación del rendimiento del procedimiento de instalación en general. Si define la propiedad del sistema correctamente, considere también establecer la propiedad com.ibm.bpm.pal.deploy.timeout en un valor mayor al predeterminado.

    Para volver al comportamiento predeterminado, suprima la propiedad del sistema o establezca el valor en falso.

Estas propiedades del sistema JVM se deben establecer en cada servidor afectado. Debido a que se encuentran en un ámbito del servidor, se la utiliza para cada instalación de aplicación de proceso en ese servidor.

Procedimiento

Para establecer una o ambas propiedades del sistema, siga los siguientes pasos.

  1. Inicie una sesión en la consola administrativa de WebSphere Application Server.
  2. Selecciones el servidor al pulsar en Servidores > Tipo de servidores > WebSphere Application Servers > nombre_servidor.
  3. Desde el área de infraestructura del servidor, pulse Gestión de Java y procesos > Definición de procesos > Máquina virtual Java > Propiedades personalizadas.
  4. Cree una o las dos siguientes propiedades personalizadas:
    name = com.ibm.bpm.pal.deploy.timeout
    value = timeout_value
    
    name = com.ibm.bpm.fds.sca.deploy.outOfProcess
    value = true
    El valor de tiempo de espera se especifica en segundos.
  5. Pulse en Aceptar y guarde los cambios de la configuración cuando se solicite.
  6. Reinicie el servidor.