Una interfaz de programación del sistema (SPI) es una ampliación conectable al entorno de ejecución. Las SPI de Compute Grid se configuran a través de un archivo de propiedades que identifica las SPI instaladas y sus nombres de clase de implementación.
Archivo de propiedades | Atributo |
---|---|
Nombre | xd.spi.properties |
Ubicación | <directorio de instalación de WAS>/properties |
Formato | <SPI name>=<clase de implementación de SPI> |
La finalidad de la SPI del creador de parámetros es dividir el trabajo de nivel superior en varios subtrabajos. La SPI del creador de parámetros determina el número de subtrabajos que se van a crear y las propiedades de entrada para cada subtrabajo. Normalmente, las propiedades de entrada contienen información para las que los fragmentos de datos procesan un subtrabajo concreto. La implementación de la SPI del creador de parámetros es obligatoria.
Hay un SPI del creador de parámetros predeterminados que proporciona las funciones básicas del creador de parámetros genérico. Para invocar esta implementación, en el archivo xd.spi.properties establezca la propiedad spi.parallel.Parameterizer en el valor de com.ibm.ws.batch.parallel.BuiltInParameterizer. Para especificar el número de subtrabajos, utilice la propiedad de entrada com.ibm.wsspi.batch.parallel.jobs=N, donde N es el número del subtrabajo. Para especificar una propiedad exclusiva de una instancia de subtrabajo específica, utilice la propiedad com.ibm.wsspi.batch.parallel.prop.<nombre_propiedad>.<subtrabajo>=<valor> donde subtrabajo es la instancia de subtrabajo (1< subtrabajo < N). Las demás propiedades en formato <nombre_propiedad>= <valor> son visibles en todos los subtrabajos.
La SPI de sincronización le da el control durante las distintas etapas del ciclo de vida de la transacción lógica. Por ejemplo, Begin, beforeCompletion, afterCompletion, etc. Puede utilizar estos puntos de control para retrotraer la transacción lógica si es necesario.
La SPI de SubJobCollector recopila información relacionada con una ejecución de subtrabajo. En una implementación típica, la información de progreso sobre un subtrabajo se almacena como un objeto externalizable dentro del contexto del subtrabajo. Cuando el contenedor de proceso por lotes invoca la SPI del recopilador, se devuelve la información almacenada anteriormente dentro del contexto del subtrabajo.
La SPI de SubJobAnalyzer se utiliza para analizar información recopilada anteriormente utilizando la SPI de SubJobCollector. En una implementación típica, la SPI de SubJobAnalyzer se utiliza para agregar información obtenida de todos los subtrabajos para determinar el código de retorno consolidado para el trabajo de nivel superior. La SPI de SubJobAnalyzer se invoca durante el proceso de puntos de control y al completarse el trabajo.