Architecture
The following figure illustrates the interactions among the parts of TIBCO Messaging as messages flow between TIBCO FTL® clients and Apache Pulsar clients.
Bridge for Apache Pulsar
The FTL Bridge for Apache Pulsar comprises two connectors that appear to FTL as two distinct clients:
- The Source Connector receives FTL messages, converts their format from an FTL-formatted message to an equivalent JSON-based representation, and then sends the messages to the Pulsar broker using a topic based on the source connector configuration settings.
- The Sink Connector receives Pulsar messages based on a topic specified in the sink connector configuration settings, converts their format from JSON to FTL, and then sends the messages to the FTL server.
While the figure shows the FTL server as a message broker (using the default Server FTL transport type), the bridge's connectors can also interface directly with FTL Clients in a peer-to-peer configuration based on the FTL configuration settings for either the Source or Sink Connectors. The Server-based transport is recommended due to its minimal configuration requirements; this is the default configuration in the supplied Bridge for Apache Pulsar configuration files.
Message Flow
The FTL Source Connector can subscribe to FTL messages and deliver those messages, using a pre-defined topic, to the Pulsar Broker for distribution to subscribing Pulsar clients for consumption.
As these messages move through the Source Connector, they are converted from native FTL format into JSON format for processing by Pulsar clients. This conversion is done dynamically, field-by-field, for each FTL-originated message received.
In the opposite direction, Pulsar clients can publish JSON-formatted messages to topic(s) the Sink Connector is subscribing to, which then translates these messages into FTL formatted messages and publishes them to FTL client applications, based on the FTL configurations for the Sink Connector.