TPF MQSeries Local Queue Manager Support Allan Feldman allanf@us.ibm.com TPF Users Group - Fall '98 10/12/98
MQCONNO ", MQOPENQ TPF Iv\Q Client Support TPF Iv\Q Local Queue Mgr Supportl-- - -f, ~ LU6.2P MVS QMGR Local Queue ~ Local/Remote Queues WINTQMGR
Why IBM MQSeries? e- lnteropera bility between platforms Over 17 platforms: Windows NT, AIX, UNIX, MVS"",TPF... Interoperability between customers. TPFto TPF Over SCKX1 customers... Guaranteed Message Delivery (if you want) Single or multiple messages within a commit scope Persistent and non-persistent messages II>- Application Productivity Communications hidden from application e- Simple API
TPF MQ Series Local Queue Manager Support provides... ~ Coexistence with TPF MQ Client Support ~ MQ API ~ Local and remote queues ~ Dead letter queue... Empty queue trigger user exit II>- Persistent and non-persistent messages...sender and receiver channels - fast and normal II>- Bridge to existing non-mq TPF application
local Queues TPfApplication Iv\QCONN (TPF.QMGR) Iv\QOPEN (TPF.LOCALQ) Iv\QGET (HandIt!) Iv\QCLOSE (Hancllt!j Iv\QDISC (HandIt!) TPF.QMGR Receiver Channel SG(TPF.QMGR TPF.LOCALQ
Local Queues Loosely Coupled TPF A MOOPEN(TPFMQ, LOCALQ) MOPUT(Hand!el) MOOPEN(TPFMQ, ~--t LQ1) MQPUT(Handle2j TPF B MOOPEN(TPFMQ, LOCALQ MOG T(Hand!e) DEF OL-LOCALQ USAGE-NORMAL COMMON-YES DEF OL-LQ1 USAGE-NORMAL COMMON-NO La1 LOCAlQ
Local Queues Transmission Queues... Messages put to remote queues are actually put to a transmission queue... Sender channel gets messages from transmission queue... Messages on a transmission queues can be "swung" to another transmission queue For instance, when channel is broken All new messages get put to new transmission queue All existing messages on transmission queue are moved to new transmission queue
Remote Queues local Definition of a Remote Queue TPfApplication Iv\QCONN (TPF.QMGR) ""'OPEN IRQ I) Iv\QPUT (Hamllt!j Iv\QCLOSE (Ham/It!) Iv\QDISC (Ham/It!) TPF.QMGR Sender Channel CHLI SG(MVS.QMGR VS.LOO\LQ) DEF OR-RQ I RQMNAME-MVS.Q\K R RNAME-MVS.LOCAL Q XMITO TPF.TRANSMISSIOl\Q DEF Q-lL-CHL I CHLTYPE-SDR XMITQ TPF. TRANSMISSIONQ ~ TPF.TRANSMISSIONQ
Remote Queues Queue Manager Alias TPF Application MOC"'N (TPf.Q\\GR) MQOPEN (RQM...RQ I) MQPUT (Hand;' MOaOSE (H.md14 M>D1SC (Hmdl4 TPF.QMGR """" Chamti MSG(MV' QMGR RQ I) CHli rl----j~ DEF Ol~"'~o\' gr RO\\'IlM IE MV$ Q\tVR: ~ "'\1f =' );}'IITO TPF.TRANSI\V$$lOl'lQ DEF <Hl <K1 Oilnpf SDll: XNHO TPF.TRAN$M t:) $la--q TPF.1RANSMISSIONQ
DEAD.lmER.QUEUE ~ System queue ~ M e ss a s e s put to DEAD.LETTER.QUEUE when the queue manager can not resolve destination ~ Customers will need a DEAD.LETTER.QUEUE monitor
Empty Queue Trigger ~ Application issues a MQGET but the queue is empty ~ When a message is then put to the empty queue the empty queue user exit is invoked II>- User exit must determine which application, if any, to process the queue
Message Types... Persistent Guaranteed delivery Stored on file until next node in network confirms receipt... Non-persistent Not guaranteed
Channels II>- Receiver Channels All messages received in batches e Normal All messages stored on file Fast Persistent messages are stored on file Non-persistent messages immediately given to a TPF application in AMOSG format via TPF MQ Bridge
ella noels (continued) ~ Sender Channels Normal All messages sent in batches - persistent and non-persistent Messages deleted from file upon confirmation from remote channel Fast Only sends non-persistent messages No batch- no confinnation
TPF MQ Bridge ~ Inbound non-persistent MQ messages over fast channel Converted to AMOSG format User Exit to convert LNIATA Handed to COA4 - message router e- Outbound ROUTe intercepted Converted back to MQ message format User exit Sent as non-persistent message
Product Infonnation ~ Available on PUT 9... Uses TPF CS, Internet Daemon, C++, Lower case functional message support ~ Channel is OCO... Requires C++ compiler... Requires recompile of existing MQ Client applications and TPF MQ Client Support