Monday 24 June 2019

Publish/Subscribe

Publish/subscribe is a style of messaging application in which the providers of information (publishers) have no direct link to specific consumers of that information (subscribers), but the interactions between publishers and subscribers are controlled by pub/sub brokers.

In a publish/subscribe system, a publisher does not need to know who uses the information (publication) that it provides, and a subscriber does not need to know who provides the information that it receives as the result of a subscription. Publications are sent from publishers to the pub/sub broker, subscriptions are sent from subscribers to the pub/sub broker, and the pub/sub broker forwards the publications to the subscribers.

Publish/Subscribe is a term used to define an application model in which the provider of some information is decoupled from the consumers of that information.

A typical publish/subscribe system has more than one publisher and more than one subscriber. An application can be both a publisher and a subscriber.

New providers/consumers can be added without disruption

The publisher generates a message that it wants to publish and defines the topic of the message. A subscriber registers a request for a publication by specifying the topic (or topics) of the published messages that it is interested in. Subscriptions to an MQ pub/sub broker might include the following information:
The subscription point from which it wants to receive publications.
The content filter that should be applied to the published message.
The name of the queue (known as the subscriber queue) on which publications that match the criteria selected are placed. This queue can be a cluster queue, so that publications can be distributed to clustered subscribers.

Publishers provide information about specific topics by sending publications to the queue manager. MQI publishers use the MQPUT verb
Subscribers register subscriptions with the queue manager to indicate their interest in information relating to specific topics. MQI subscribers use the MQSUB verb

The queue manager forwards each publication it receives to all subscribers with a subscription which matches the associated topic


In the compute node set the message type to publish and topic name, before you pass it to the Publication node.

SET OutputRoot.MQRFH2.psc.Topic = '/data/v1';
SET OutputRoot.MQRFH2.psc.Command = 'Publish';

In WebSphere MQ Explorer create the topic '/data/v1'



In WebSphere MQ Explorer create a subcription, subscriber1


I will then create a subscriber flow which will read messages from the test queue.

Tuesday 18 June 2019

Configuring Email Nodes to Receive and Send Emails using Office365 Mailbox in IBM Integration Bus


Enter the following commands to enable IBM Integration Server to use secure POP.

mqsichangeproperties <Integration Node> -e <Integration Server> -o HTTPSConnector -n sslProtocol -v TLSv1.2

mqsichangeproperties <Integration Node> -e <Integration Server> -o ComIbmJVMManager -n jvmSystemProperty -v "-Dmail.smtp.starttls.enable=true -Dmail.smtp.auth.enable=true"

mqsichangeproperties <Integration Node> -e <Integration Server> -o ComIbmJVMManager -n truststoreFile -v <path to trust store file>

mqsichangeproperties <Integration Node> -e <Integration Server> -o ComIbmJVMManager -n truststoreType -v JKS

mqsichangeproperties <Integration Node> -e <Integration Server> -o ComIbmJVMManager -n truststorePass -v brokerTruststore::password

mqsisetdbparms <Integration Node> -n Intermittent::truststorePass -u ignore -p <trust store password>

mqsichangeproperties  <Integration Node> -e <Integration Server>  -o ComIbmJVMManager -n keystoreFile -v <path to key store file>

mqsichangeproperties  <Integration Node> -e <Integration Server>  -o ComIbmJVMManager -n keystoreType -v JKS

mqsichangeproperties <Integration Node> -e <Integration Server> -o ComIbmJVMManager -n keystorePass -v Intermittent::keystorePass

mqsisetdbparms <Integration Node> -n <Integration Server>::keystorePass -u ignore -p <key store password>

mqsisetdbparms <Integration Node> -n email::securityIdentityName –u myEmailServerUserID  -p 'myEmailServerPassword'

Stop and restart the integration server.