Universal Messaging 9.8 | Administration Guide | Universal Messaging Enterprise Manager | Administration Using Enterprise Manager | Channel Administration | Creating Channel Joins
 
Creating Channel Joins
This section describes the process of joining channels on Universal Messaging realms. Channels are the logical rendezvous point for data that is published and subscribed .
Channels can be joined programmatically or by using the Universal Messaging Enterprise Manager as described below.
Joining channels using the Enterprise Manager creates a physical link between 2 channels, a source channel and a destination channel. Once created, any events published to the source channel will be republished onto the destination channel.
Joins can be created using filters , so that only specific events published to the source channel that match a criteria will be routed to the destination channel.
Joins can also be created in several configurations, firstly joins may be created between channels on a realm and a stores on another realm federated with the source realm. Alternatively joins can be created from channels on a clustered realm to stores within the same cluster. Non-clusterwide channels can be joined to cluster-wide stores, (but not vice versa). Additionally, channels can be joined from channels on one cluster to channels on another cluster by using inter-cluster joins (see Inter-Cluster Joins).
Universal Messaging also supports joins where the destination (incoming) is a queue. Universal Messaging does not support joins where the source of the join is a queue.
The image below shows a set of realms that is part of a cluster 'productioncluster'. There exists within this cluster, a cluster channel called '/eur/rates'.
By selecting the cluster channel '/eur/rates' on the productionmaster realm, and right-clicking you can select the 'Join Channel' menu option, you will be presented with the join dialog. This allows you to create a join between the clustered channel and any other channel in any realm.
In this example, the realm 'productionmaster' contains a channel called /local/rates. If we select this channel as the channel we wish to join to as shown in the join dialog below, with a filter of CCY='EUR' this will ensure that only those events with the event property CCY equals to 'EUR' will be published to the '/local/rates' channel.
Clicking on the 'OK' button will create the join. By selecting the 'Joins' tab panel for the '/eur/rates' channel you will be presented with a panel that shows the join just created, as shown in the image below. Selecting the newly created join will also show you any relevant filtering criteria that the join has been created with.
The table that shows the joins for a channel will indicate in the 'Type' column whether the join is 'Outgoing' or 'Incoming'. An outgoing join indicates that the selected channel is the source for the join, whereas 'Incoming' will indicate the selected channel is the destination channel.
It is also possible to delete the join by selecting a join from the joins table, and clicking the 'Delete Join' button. Joins can only be deleted in the Enterprise Manager from the source (outgoing) channel. If the destination channel (incoming) is selected, the 'Delete Join' button will be disabled.
Inter-Cluster Joins
To add a joins between channels on different clusters, first create an inter-cluster connection between the two clusters. Next, simply select a realm in the desired destination cluster as the join destination in the dropdown menu, as below:
As with non-inter-cluster joins, these joins can be specified with filters and hop-counts. If realms in the destination cluster go down, the join will failover and will continue to deliver events so long as the destination cluster is formed.
Inter-cluster joins can also be formed programmatically .

Copyright © 2013-2015 | Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, USA, and/or its subsidiaries and/or its affiliates and/or their licensors.