Skip to main content

xSuite Interface Windows Prism 5.x – Online Help

Program Functionality

xSuite Interface contains a number of components that run independently and largely in parallel. Configuration of xSuite Interface is performed through one or more processing scenarios. The configuration determines which of these scenarios is actually executed and the number of instances in which the execution takes place. The parallel operation of program instances can be useful in terms of load distribution, even across multiple computers. These program instances thus execute only certain components according to a specific configuration.

The primary component that makes up the program is a worker. The program is based on the IPO model (Input, Processing, Output). Accordingly, there are three elementary types of workers:

  • Input worker: worker for the input step

  • Process worker: worker for the processing step

  • Output worker: worker for the output step

A configured processing scenario that describes the reading in of data from a system, the subsequent preparation of the content of this data, and the output of the data to one or more systems requires at least one worker instance each of the types "Input," "Process," and "Output" by default. Depending on configuration, multiple worker instances of the same type can also work on the same scenario in parallel, or a single worker instance can serve multiple scenarios sequentially.

In the standard system, a worker checks at defined intervals for new data to be processed. In the case of an input worker, this check is performed via the corresponding interface against the connected third-party system. After successful import, the data is available in the internal management database. The workers of the subsequent processing and output steps can query directly against this database whether data from the previous step is available for further processing.

In contrast to the behavior described above, input interfaces and output interfaces of the type (REST) web service do not check for new data independently, but wait for an external process to send a request to send new input data or to retrieve output data that is ready. Web service instances of types "Input" or "Output" are therefore activated for these interfaces. In the input step, this procedure is followed instead of an input worker being used. In the case of output, however, this is done in addition to an output worker instance, which is nevertheless required internally in the program.

Implicitly, in addition to the input, output, and process worker types, there are additional worker types:

Workers

Description

Backup worker

The backup worker corresponds to an input worker or Input Web Service and is responsible for the final cleanup and backup of input data.

BatchUpdate worker

The program works with batch-oriented input data. These are input batches that might contain multiple documents depending on the interface. While input workers and backup workers each process a complete batch as a whole, process workers and output workers work with individual documents. Thus, multiple instances of these workers might work in parallel on the data of the same batch.

The purpose of the BatchUpdate worker is to update the status of the parent batch in a timely manner, since the document-oriented worker instances do not have an overall view of the instances running in parallel and the parent batch.

Notice

The document-based mode of operation of the output worker represents a functional limitation compared to the previous program generation.

While in the previous program generation an input batch could be passed through to the output as a coherent unit, now only output data can be generated, each comprising a single document.

However, this only affects a few output formats and output systems. In addition, most target systems also work only with documents, rather than batches.

In addition to the types already mentioned, other worker instances and web services can be enabled to run independently of specific processing scenarios:

Worker / Web Service

Description

Schedule worker

The schedule worker executes time-controlled global functions to perform general cleanup tasks, for example.

Status Web Service

Config Web Service

The Status Web Service and the Config Web Service are back-end services for integrated UI applications. The purpose of these services is to monitor processing status and provide configuration support.

xSuite Helix proxy

The xSuite Helix Proxy is a special HTTP proxy server that forwards HTTP requests from third-party applications to the xSuite Helix Cloud.

Since these applications usually do not support Keycloak authentication method by themselves, the essential task of the proxy is to retrieve the required token from the Keycloak server and add it to the HTTP header data of the requests.

The following diagram provides a graphical overview of the program architecture. Detailed explanations of the elements shown here can be found at Processing Steps.

Architektur_update01.png