MQ series interview questions and answers - freshers, experienced

What is IBM MQ Series? What is the significance of MQ Series?

- A middle ware from IBM.
- It has runtime managers such as Queue Managers and Queues.
- Queue is an object which holds messages of various formats: XML/text/byte.
- Queue manger maintains and manages objects like Queues, channels.
- Various listener applications listen to these queues for grabbing the messages, followed by processing these messages.
- Java Messaging Service is one of the standards provided by JEE specification for asynchronous messaging.
- The queues can be defined in JEE container and send messages on these queues.
- Message Driven Bean can be configured for listening the JMS queues.
- When a message is on the JMS queue, the corresponding MDB’s onMessage() method is invoked and the message processing can be done.

Significance of Websphere MQ Series:
- WebSphere MQ will significantly improves the flow of information across an enterprise.
- The message is placed and adjusted for dynamic business requirements.
- MQ series reduce maintenance, integration costs and acts as a bridge to various technologies.
- MQ Series reduces costs and all the disruptions are processed from data loss.
- Allows ongoing maintenance efforts through universal service delivery.
- Security breaches are eliminated and insures the compliance through message and transaction integrity.

What is a Message and what does it contain?

- A message is a string of bytes which has a meaningful usage in applications.
- Messages are utilized to transfer information across applications.
- The applications can run on the same or on different platforms.

Websphere MQ messages contain:
- Application data: The application’s content and data is defined by the application programs which uses it.
- Message Descriptor: The message is identified by the message descriptor and contains additional control information, like the type of message and priority assigned to the message.

How to define a buffer pool for holding messages in main storage? Explain.

- Buffer pool is defined by using DEFINE BUFFPOOL.
- DEFINE BUFFPOOL can be issued only from CSQINP1 data set.
- DISPLAY USAGE TYPE(PAGESET) can be used for displaying buffer pool information.
- The synonym DEF BP can also be used instead of DEFINE BUFFPOOL.
- Example:
DEFINE BUFFPOOL

BUFFERS(1000)
DEFINE BUFFPOOL(buf-pool-id)
BUFFERS(integer)
Parameter descriptions
- (buf-pool-id) Buffer pool identifier, and a mandatory entry.
- An integer which in the range from zero through 15.
- BUFFERS(integer)- Integer represents the number of 4096-byte buffers.

What are the Telemetry Capabilities?

- Telemetry enables Remote sensors, smart meters etc., to be easily connected with the existing applications and services.
- Telemetry provides messaging technique for optimizing the needs of sensor networks.
- Decision makers can focus on significant data and events.
- It enables responses of rapid and proactive nature for current situations.
- Network traffic is reduced and responsiveness increases by only sending significant data and events.
- It encourages various device manufacturers to enable their sensors that are ready to connect into IBM connectivity solutions.
- Enables the custom implementation of messaging that is device-side for connecting unusual devices.
- Optimizes the use of network to lower the traffic.
- The pay-per-byte costs can be reduced in satellite networks.

What are the Integration and supported environments in IBM MQ?

- IBM MQ supports in virtual integration.
- Supports more than 80 platform configurations, including z/OS support.
- Integrates with CICS,IMS,DB2,Microsoft .Net and JEE environments.
- Supports Message Queue Interface and Industry standards such as JMS interface along with integrated public-and-subscribe support.
- Internet secure communication is supported with industry standard SSL.
- IBM MQ supports IP V6.
- Awarded Common Criteria certification.
- Supports end-to-end governance with Extended Security Edition.

Mention some rules for using MQSC commands.

- Each command of MQSC starts with a primary parameter, followed by a secondary parameter.
- The name or generic name of the object should be followed by secondary parameter.
- The keywords, parentheses and values could be separated by unlimited number of blanks and commas.
- At least one blank immediately preceding each parameter is mandatory, except on z/OS.
- Blanks enclosed within a pair of quotations marks are significant.
- Repeated parameters are not allowed.
- String can contain blanks, lowercase alphabets or special characters other than period(.), forward slash(/), underscore(_) percent sign(%) must be enclosed in a single quote.
- A blank pair of parenthesis is invalid with out significant information enclosed in between.
- Keywords are not case sensitive.

Explain some reserved queue names of IBM Websphere MQ.

- The following are some of the reserved queue names of IBM Websphere MQ Series:
SYSTEM.ADMIN.CHANNEL.EVENT: Queue for events of channel.

SYSTEM.ADMIN.COMMAND.QUEUE: Queue for PCF command messages to be sent for non- z/OS.

SYSTEM.ADMIN.CONFIG.EVENT: Queue for events of configuration.

SYSTEM.ADMIN.PERFM.EVENT: Queue for events of performance.

SYSTEM.ADMIN.QMGR.EVENT: Queue for events of queue manager.

SYSTEM.CHANNEL.COMMAND: A distributed queuing queue on z/OS using CICS.

SYSTEM.CHANNEL.INITQ: A distributed queuing queue on z/OS without CICS.

SYSTEM.CHANNEL.SEQNO: A distributed queuing queue on z/OS using CICS.

SYSTEM.CHANNEL.SYNCQ: A distributed queuing queue on z/OS without CICS.

SYSTEM.CICS.INITIATION.QUEUE: Queue for utilization of triggering for non- z/OS.

SYSTEM.CLUSTER.COMMAND.QUEUE: Queue for communication repository changes among queue managers (applicable for AIX, HP-UX, Linux, OS/2 Warp, OS/400, Solaris, Windows, and z/OS only).

SYSTEM.CLUSTER.REPOSITORY.QUEUE: Queue for holding information about repository (applicable for AIX, HP-UX, Linux, OS/2 Warp, OS/400, Solaris, Windows, and z/OS only).

How does MQ support the Integration?

- MQ is operating system independent.
- MQ is protocol independent.
- It supports TCP/IP, LU6.2, SNA, NetBIOS,UDP.
- Sender and receiver can be from any platform.

What is Asynchrony in MQ?

- The exchanging of messages among sending and receiving programs is time independent.
- The sending and receiving application programs are decoupled.
- Sender’s process can continue with out the need of waiting for the receiver’s acknowledgement message.
- The receiver’s application need not be running while the message is sent.
- The receiver can retrieve the messages after it has been started.

What is the effect of using persistent messages?

- Persistent messages are usually logged.
- The performance of the application is reduced by logged messages.
- Persistent messages are utilized only for essential data.
- When the queue manager is stopped / failed or the data in the message is discarded, then use a non persistent message.
- As the logged data is persisted for long time and need to keep track about the events that are happening in the systems, this data need to be persisted.
- Use buffering mechanism to improve the speed of retrieving data from the logged messages.

Where are the backup files are present after creating the Queue Manager?

MS Windows Operating System:
- The configuration information of Queue Manager is stored in the Windows Registry

UNIX Operating System:
1. At the time of product installation, the Web Sphere Message Queue configuration is created. A list of queue managers are available the list is updated every time a queue manager is deleted or created. Each node has only one ‘mqs.ini’ file.

2. At the time of creating a new queue manager, a file with extension ‘qm.ini’ is created automatically. It contains configuration parameters for the queue manager.

What are the commands used for starting and stopping the Queue Manager?

To start the Queue Manager: strmqm QMName
To stop the Queue Manager: endmqm -w QMName

Explain about the types of Queues.

The following are the types of queues:

1. Model Queue: A queue definition is called a model queue. It is used when a dynamic queue is created.

2. Alias Queue: Another name for a local queue or a remote queue. It’s usage is for security and maintenance.

3. Remote Queue: Remote queue is a queue definition pertaining to another Q Manager.

4. Initiation Queue: It is a local queue. Queue manager writes a trigger message at the time of meeting certain conditions on another local queue.

5. Dynamic Queue: A dynamic queue is created ‘on the fly’ on demand by the application. The dynamic queues may be retained or automatically deleted when the application program ends. It is used to store any intermediate result.

6. Cluster Queue: A local queue. It is known throughout a cluster of queue managers.

7. Reply-to-queue: A request message must have the queue name, into which the program that is responding must put the reply message.

What is Intercommunication?

- Sending messages from one queue manager to another queue manager is known as inter communication.
- The receiving queue manager may by on the same machine or another.
- It could be executing on the platform where the local queue manager exists.
- It could be executing on another platform supported by Web Sphere MQ.
- The participating entities are
1. Message channels, message channel agents.
2. Transmission queues, channel initiators and listeners.
3. Programs those are co-existing.

What is Transmission Queue?

- Transmission queues store messages which are destined for a specific remote queue manager.
- At least one transmission queue must be defined for each remote queue manger.
- The messages are directly be sent to the remote queue manager.

What is Initiation Queues?

- Initiation queues are used for triggering.
- A trigger message is put by a queue manager on an initiation queue when a trigger is occurred.
- Logical combinations are part of a trigger event which is detected by the queue manager.

What is Dead Letter Queue?

- When a queue is not delivered to their correct destinations, then it is called as Dead Letter queue.
- When the destination queue is full, the dead-letter queue occurs. It is identified by SYSTEM.DEAD.LETTER.QUEUE.
- A dead-letter queue is defined for distributed queuing, on each queue manager.

What is the Algorithm followed in retrieving the Messages from the Queue?

- The message can be retrieved in First-in-first-out (FIFO) basis.
- Message priority – defined in the message descriptor. Messages with same priority are retrieved on a FIFO basis.
- A specific message can be retrieved by a program request.

What is Process Definition and what are the attributes does it contain?

- An application which starts in response to an event that is triggered in MQ Queue Manager is defined as a process definition.
- The application ID, application type and data specific to the application are the attributes for defining process definition.

What are the Types of messages?

- MQ messages types are:
Datagram: It is an unsolicited message.
Request: A message for which a response is expected.
Reply: A message event such as a confirmation on arrival or delivery. It can be an error.
- MQ messages can be persistent or non-persistent.

What are the message sizes?

- For Queue manager, the limit is 4 MB.
- For a Queue the limit is 4 MB
- The default memory size for Q Capture program is 64 KB.
- The default memory size for Q Apply program is 2 MB.

What is the attribute used to see the Message length?

- The attribute used to see the message length is MaxMsgLength.

Explain about
a) Message Client
b) Message Server

a) Message Client:
- A Web Sphere MQ Client is an application’s component that is running on a system for sending MQI calls to a queue manager which is running on another system.
- The response is sent back to the client, which passes back to the application.

b) Message Server:
- A Web Sphere MQ Server is an application’s component that provides queuing services to several clients.
- All the MQ objects of an application, like the queues, exist only in the queue manager machine.
- Web Sphere MQ server can also support the Web Sphere MQ Applications that are running locally.
Post your comment