Upload
juarez-junior
View
154
Download
13
Embed Size (px)
Citation preview
IBM Message Queue (IBM MQ)
Juarez Barbosa JuniorSenior Software [email protected]
© IBM 2016 2
MOM – Introduction
• MOM – Message-oriented middleware− IBM MQ, IBM MessageSight (MQTT), Tuxedo, TIBCO, HiveMQ (MQTT),
RabbitMQ (MQTT/AMQP), ActiveMQ (AMQP), Microsoft MSMQ - Brokers− Asynchronous communication – Message Sender does not need to wait for
response from Message Receiver (fire-and-forget / non-blocking)− Loose coupling – message producer does not need to know the details of
message consumer, they do not need to be active at the same time− Point-to-point (queue), Publish-subscribe (topic)
© IBM 2016 3
MOM – Introduction
• MOM – Message-oriented middleware− Transactions – atomicity, consistency, isolation, durability, scalability, security,
acknowledgment, routing, transformation, filtering, priority, data enrichment, data aggregation (async request, delayed response), persistence (QoS)
− Message – Binary or Character data− Queue – Managed object that implements the point-to-point messaging model
and can receive and store messages in a MOM− Topic – Managed object that implements the publish-subscribe messaging
model and receive and store messages in a MOM
© IBM 2016 4
MOM – Message Oriented Middleware
© IBM 2016 5
MOM – Message Oriented Middleware
• Point-to-Point (Queue)− One to one (1…1), many to one (*…1)− One queue per receiver, one message received by one receiver
© IBM 2016 6
MOM – Message Oriented Middleware
• Publish-Subscribe (Topic)− One to Many (1…*), Many to Many (*…*)− Topic, same message may be received by many receivers
© IBM 2016 7
MOM – Message Oriented Middleware
• Point-to-Point (FIFO Queue)− All messages have the same priority− Messages are delivered in the order they enter the queue - FIFO
© IBM 2016 8
MOM – Message Oriented Middleware
• Point-to-Point (Priority Messages / Queue)− Queue buffers the messages and orders them according to their priority when
they enter the queue (priority applied at point T in time)− Messages are delivered in the order they enter the queue - FIFO
© IBM 2016 9
MOM x Email - AnalogyMOM Email
MOM Message SMTP Message
Queue (point to point) Mailbox
Consumer POP3 / IMAP Mail Client
Producer SMTP Client
Queue Manager Mail Transfer Agent
Routing Info To: Cc: Bcc: addresses
Topic (Publish subscribe) Mailing list
Message ACK Read Receipt
TTL Expires Header
Communication for Systems Communication for People (users)
© IBM 2016 10
IBM MQ – Introduction
• IBM Message Queue− MQM / MQSeries (1992), WebSphere MQ (2002), IBM MQ (2014)− IBM Message Oriented Middleware− Clients: COBOL, C, C++, MQ Java, JMS, .NET, IBM MQI, others− Platforms / OS: LUW, zOS, System i, System p, HP-UX, Solaris, others− Protocols: TCP, UDP, HTTP(S), SMTP, FTP, Proprietary protocols− Architecture− MQ Objects: Queue Manager, Messages, Queues, Process Definitions,
Channels, Listeners, others
• Call scheduled with Oliver− xxxxx
© IBM 2016 11
IBM MQ – MQ Objects• IBM Message Queue Objects – Queue Manager (QMGR)
− Queue Manager - Manager, orchestrator for a given message queue scheme. The QM coordinates the MQ objects, sends messages to other queue managers over a message channel. The queue manager may be co-located with an application or located in a separate server host.
© IBM 2016 12
MOM – Message Oriented Middleware
• IBM Message Queue Objects – Queue Types− Application: Local, Remote, Alias, Model, Dynamic− MQ internal: Dead-letter, Initiation, Transmission, Cluster, Comand
, Event, Reply-to
© IBM 2016 13
IBM MQ – MQ Objects
• IBM Message Queue Objects− Process Definition - Defines a feature that can start an application in response
to a trigger event. Attributes include application type, application ID (path) and data (MIME type) to the application
− Channels - Logical communication link provides communication path from one MQM to another or from external client to MQM. It shields applications from underlying protocols.
− Listeners – They listen and accept remote connections and start inbound channels.
© IBM 2016 14
IBM MQ – Demo
− WMQ CLI (Command Line Interface)− WMQ Explorer (GUI)− Basic MQ Commands (MQSC, Control)− Create QMGR, Create Queue, Send Message, Retrieve Message