Application Instances (Variant Configurations)

Administrators configure varying arrangements of transports and persistence stores for different environments. Variant communication schemes for processes are called application instances. For each application, administrators define one or more application instance. Each application process selects the appropriate application instance at run time based on environmental factors, such as the host name.

Application Instance Definition and Identifiers

The Administrator creates application instance definitions which consist of a name, a set of match parameters, and a set of connectors to implement each endpoint. Application instance definitions are used by application processes in a specific context, for example, a process that runs on a specific host computer or a process that supplies an application instance identifier which are used at run time for the connection.

The number of transports and stores are based on whether an application runs as a single process or as many processes:

  • When an application runs as a single process, the administrator determines one set of transports and stores.

  • When an application runs as many processes, it may require either of the following:

    • Only one set of transports and stores to serve all the application processes in the same way.

    • A different set of transports and stores for different processes.

Example

In the following diagram, the application Publisher sends messages to application Subscriber. Publisher runs on Host 1 as a single process. If Subscriber ran only as a single process or multiple processes on Host 1, the administrator could arrange an application instance for only Shared Memory Transport T1. However, the Subscriber application processes on other hosts requiring a different transport, so the administrator arranged application instance Multicast Transport T2 (a variant communication scheme). The administrator connects Publisher to both transport types.

Figure 17: Transport Variants