Gateway application identity

When an application developer develops a Gateway application, they must provide a unique Gateway type that differentiates the application from other Gateway applications. This name can be anything that uniquely identifies the application within the Diffusion system. For example, the Gateway type of a Gateway application that connects to Kafka can be Kafka Application.

By convention, publicly issued applications (such as adapters provided by DiffusionData) will have a type that starts with a $.

To run the application, the user must provide an application identity (id in configuration, (which can be anything)). For example, the id for a Kafka Application may be Kafka-application-1

In the framework, this is used along with the application type to uniquely identify an application instance registered to a Diffusion server (or cluster). The uniqueness of the id applies to the instance of the application. A user could have many instances of the same application each with different ids (and thus with their own unique configuration). The identity is linked to the configuration for the application instance. When an instance of the application is started with the same identity as used previously, it can restore the saved configuration from the server, where it is persisted from the first time the identity was used, and every time the configuration associated with the identity is updated.

If more than one instance of an application with the same type and identity is connected to a Diffusion server, the first instance will go into active mode and others into passive mode.
See Failover support for more details.