Professional Documents
Culture Documents
com/site/interviewwebsphere/home/webspheremqquestions
Useful Commands for MQ administration
dspmqver :- to display MQ series version
dspmq :- to view all queue managers of MQ series.
crtmqm :- to create a queue manager
strmqm :- to start queue manager
runmqsc :- to enter in to particular queue manager
endmqm :- to end a queue manager
dltmqm :- to delete a queue manager
dspmqcsv :- to display command server
endmqcsv :- to end command server
strmqcsv :- to start command server
runmqlsr :- to run listener service
endmqlsr :- to end listener service
runmqchl :- to run a channel out of queue manager
runmqdlq :- to execute dead letter handle with the help of rule table
setmqaut :- to set authorizations for particular objects like queuemanager,queues channels, listeners to
user or group
dspmqaut :- to display authorization for particular user
dmpmqaut :- to dump authorization for particular user
runmqchi :- to run a channel initiator for particular queue manager
runmqtrm :- to run trigger monitor on initiation queue for particular queue manager
rcdmqimg :- to take objects (or) record image of a particular queue manager objects
rcrmqobj :- to recreate the mq objects which are already recorded
Useful syntax of RUNMQSC utility for hadling QueueManager
DEFINE :- To define/create MQ manager objects like queue, Channels, process, and listener.
ALTER :- to update or modify the existing objects
DISPLAY :- to view all the properties of a particular object or to Display all objects
DELETE :- to delete created objects
CLEAR :- to clear the message from the queue
END :- to come out of the queue manager
PING :- to check whether other side channel / queue manager is ready to accept our request.
START :- to start the particular channel or listener
STOP :- to stop particular channel or listener
REFRESH :- used to refresh the security every time after giving or executing, set mgr or command for
queue manager or object
RESET :- used to reset channel,cluster,queue manager
RESOLVE :- to resolve the channel which is in indoubt state
SUSPEND :- to suspend a queue manager from a cluster environment
RESUME :- to remove a queue manager from a cluster environment
Websphere MQ
1. Integration.
2. Asynchrony
3. Assured Delivery
4. Scalability.
Q8.What is Queue?
Ans: A queue is a data structure used to store messages. A queue manager owns each
queue. The queue manager is responsible for maintaining the queues it owns, and for storing
all the messages it receives onto the appropriate queues
Q9.What are the Different Types Of Queues?
Ans: Queues can be characterized by the way they are created:
1. Predefined queues are created by an administrator using the appropriate MQSC or PCF
commands. Predefined queues are permanent; they exist independently of the applications
that use them and survive Web Sphere MQ restarts.
2 Dynamic queues are created when an application issues an MQOPEN request specifying
the name of a model queue. The queue created is based on a template queue definition,
which is called a model queue.
Q10.How does an application sends and receives messages from the Queues?
Ans: Application programs send and receive messages using MQI calls.
MQOPEN: It is used to open the Require Queue.
4. Processes
5. Name lists.
indirectly in MQI calls. When an alias queue name is used in an MQI call, the name is
resolved to the name of either a local or a remote queue at run time. This allows you to
change the queues that applications use without changing the application in any way; you
merely change the alias queue definition to reflect the name of the new queue to which the
alias resolves. An alias queue is not a queue, but an object that you can use to access
another queue.
Model queue object A model queue defines a set of queue attributes that are used as a
template for creating a dynamic queue.
Q15.How can U define Queues in MQ?
Ans: Queues are defined to Web Sphere MQ using:
1. The MQSC command DEFINE
2. The PCF Create Queue command
Q16.What is Transmission Queue?
Ans: Transmission queues are queues that temporarily store messages that are destined for
a remote queue manager. You must define at least one transmission queue for each remote
queue manager to which the local queue manager is to send messages directly.
Q17.What is Initiation Queues?
Ans: Initiation queues are queues that are used in triggering. A queue manager puts a trigger
message on an initiation queue when a trigger event occurs. A trigger event is a logical
combination of conditions that is detected by a queue manager.
Q18.What is Dead Letter Queue?
Ans: A dead-letter (undelivered-message) queue is a queue that stores messages that
cannot be routed to their correct destinations. This occurs when, for example, the destination
queue is full. The supplied dead-letter queue is called SYSTEM.DEAD.LETTER.QUEUE. For
distributed queuing, define a dead-letter queue on each queue manager involved.
Q19.What is Process Definition and what are the attributes does it contain?
Ans: A process definition object defines an application that starts in response to a trigger
event on a WebSphere MQ queue manager. The process definition attributes include
the application ID, the application type, and data specific to the application.
Q20.What is channel and mention different types of channels in MQ?
Ans: Channels are objects that provide a communication path from one queue manager to
another. Channels are used in distributed queuing to move messages from one queue
manager to another. They shield applications from the underlying communications protocols.
The queue managers might exist on the same, or different, platforms. Different types of
Channels:
1. Sender-Receiver Channels
2. Requester-Server Channels
3. Client Connection channels
4. Server Connection Channels.
5. Cluster Sender.
6. Cluster Receiver Channels
Q21What is Cluster?
Ans: A cluster is a group of queue managers set up in such a way that the queue managers
can communicate directly with one another over a single network, without the need for
transmission queue, channel, and remote queue definitions.
Q22.What is MQ Client?
Ans: A Web Sphere MQ client is a component that allows an application running on a system
to issue MQI calls to a queue manager running on another system. The output from the call is
sent back to the client, which passes it back to the application.
Q23.What is MQ Server?
Ans: A Web Sphere MQ server is a queue manager that provides queuing services to one or
more clients. All the Web Sphere MQ objects, for example queues, exist only on the queue
manager machine (the Web Sphere MQ server machine), and not on the client. A Web
Sphere MQ server can also support local Web Sphere MQ
Applications.
Q24.What are commands used for creating the Queue manager from the Command
prompt?
Ans: crtmqm -q -d MY.DEFAULT.XMIT.QUEUE -u DEAD.LETTER.QUEUE QM1
Here -q used to define the Queue manager QM1 as a Default Queue manager
-d is used to define the default transmission Queue -u is used to define the default dead letter
queue.
Q25.How can U make the existing Queue Manager as an default Queue Manager?
Ans: On Windows systems, use the Web Sphere MQ Services snap-in to display the
properties of the queue manager, and check the Make queue manager the default box. You
need to stop and restart the queue manager for the change to take effect.
Q26.Where are the backup files are present after creating the Queue Manager?
Ans: Windows systems: If you use Web Sphere MQ for Windows NT and Windows 2000,
configuration information is stored in the Windows Registry.
UNIX Systems: 1. When you install the product, the Web Sphere MQ configuration file
(mqs.ini) is created. It contains a list of queue managers that is updated each time you create
or delete a queue manager. There is one mqs.ini file per node.
2. When you create a new queue manager, a new queue manager configuration file (qm.ini) is
automatically created. This contains configuration parameters for the queue manager.
Q27.What is the command used for starting the Queue Manager?
Ans: strmqm QMName
Q28.What is the command used for stopping the Queue manager?
Ans: endmqm -w QMName
The command waits until all applications have stopped and the queue manager has ended.
endmqm i QMName
This type of shutdown does not wait for applications to disconnect from the queue manager.
Q29.What is the command used to delete the QueueManager?
Ans: dltmqm QMName
runmqsc QM1
Define qlocal (LQ)
runmqsc QM1
Display qmgr
Q40.What is Triggering?
Ans: Web Sphere MQ enables you to start an application automatically when certain
conditions on a queue are met. For example, you might want to start an application when the
number of messages on a queue reaches a specified number. This facility is called triggering
Q41.Explain the different types of Triggering?
Ans: There are three types of triggering
1. FIRST:
2. EVERY
3. DEPTH.
value
Secondary log files: The number of secondary log files to be allocated. The default value is
3. Receiver Channel
4.Listenr
Ans:
tcp
-m
QMNAME
-p
portno
-t
tcp
-m
QMNAME
-p
portno
Q65.What is the command that is used to provide authorization for the clients?
Ans: setmqaut
GUEST
+all
Client
Connection: Client
connection
uses
TCP/IP
connection
to
the
MQSeries Server and enables communications with the queue manager. Programs using
client connections can run on an MQSeries client machine as well as on an MQSeries server
machine. Client connections use client channels on the queue manager to communicate with
the queue manager. The client connection does not support XA transaction coordination by
the queue manager.
Q68.What are the different types of messaging systems used by JMS?
Ans: JMS applications use either the point-to-point (PTP) or publish/subscribe style of
messaging.
Point-to-Point: Point-to-point messaging involves working with queues of messages. The
sender sends messages to a specific queue to be consumed normally by a single receiver. In
point-to-point communication, a message has at most one recipient. A sending client
addresses the message to the queue that holds the messages for the intended (receiving)
client.
Publish/Subscribe: In contrast to the point-to-point model of communication, the
publish/subscribe model enables the delivery of a message to multiple recipients. A sending
client addresses, or publishes, the message to a topic to which multiple clients can be
subscribed. There can be multiple publishers, as well as subscribers, to a topic.
Q69.What are different Channel status?
Ans: Channel Status:
1. Inactive
2. Current:
2.1). Stopped
2.2). Starting
2.3). Retrying
2.4). Active
2.4.1). Initializing
2.4.2). Binding
2.4.3). Requesting
2.4.4). Running
2.4.5). Paused
2.4.6). Stopping.
Q70.Is It Possible to use one transmission Queue for the multiple message channels?
Ans: It is possible to define more than one channel per transmission queue, but only one of
these channels can be active at any one time. This is recommended for the provision of
alternative routes between queue managers for traffic balancing and link failure corrective
action. A transmission queue cannot be used by another channel if the previous channel to
runmqsc QMName
Ping channel (channel name).
Q75. What are the commands that are used on client side for putting and getting
messages from a queue?
Ans:
amqsputc
-q
Queue name -m
QMName.
QMName.
strmqbrk
-m
MYQMGRNAME
The dspmqbrk command is used to check the status of the broker. Possible states are:
starting, running, stopping, quiescing, not active and ended abnormally.
dspmqbrk -m
MYQMGRNAME
The endmqbrk command is used to stop a broker. There are two options: -c requests a
controlled shutdown (default), -i requests an immediate shutdown.
endmqbrk -i -m MYQMGRNAME
.
Q78.What is the algorithm that is followed by MQ in clustering?
Ans: WebSphere MQ uses a workload management algorithm that uses a roundrobin routine to select an available queue manager to route a message to.
Q79.What is multiple hoping?
Ans: If there is no direct communication link between the source queue manager and the
target queue manager, it is possible to pass through one or more intermediate queue
managers on the way to the target queue manager. This is known as a multi-hop.
Q80.What are the platform does MQ Client support?
Ans:
Ans: The following are prerequisites for WebSphere MQ applications running on a Windows
client.
Minimum supported software levels are shown. Later levels, if any, will be supported unless
otherwise stated.
Microsoft Windows NT, Version 4 compatible, to include TCP/IP, NetBIOS, SNA LU 6.2, and
SPX.Microsoft Windows 98.
WMQ Questions:
Whats the message code for Stopping a Queue Manager?
AMQ4044 Queue manager stopping
What is triggering and what are the components?
WebSphere MQ can start an application automatically when certain conditions on a queue
are met. For example, you might want to start an application when the maximum number of
messages on a queue reaches a specified number. This facility is called triggering
There are two ways of triggering
a. Application triggering
b. Channel Triggering
a) In the case of application triggering the components are Application queue: This is the
message queue associated with an application Process: A process definition defines the
application to be used to process messages from the application queue. Initiation queue: The
queue manager moitors the application queue. If the trigger type of the application queue is
set to Every then whenever a message is put to the application queue, the q manager looks
into the process definition and puts a message having the application name and other details
to the initiation queue Trigger monitor: The trigger monitor gets the trigger message from the
initiation queue and starts the program specified.
b) For channel triggering the transmission queue is monitored and when messages are put in
the transmission queue, the q manager puts a message in the channel initiation queue. The
channel initiator is the program which monitors the initiation queue and starts the sender
MCA. For the message to reach the target queue, the channel listener has to be running in
the target queue manager
How will you change the log file size?
You cannot change the log file size. For this you need to drop and re-create the queue
manager. The number of log files primary & secondary can be changed but you need to
restart the Q manager for the changes to take effect.
Whats the queue where the full and partial repository is stored?
SYSTEM.CLUSTER.REPOSITORY.QUEUE
How to determine if full repositories are in Synch?
SYSTEM.CLUSTER.REPOSITORY.QUEUES should have the same depth. Also you should
find something in your errorlogs if it fails. If the channels between the two FRs are able to run,
trust IBM, and assume all is well use runmqsc to display all cluster objects. Redirect the
output into a file Analyze both files for differences .
What is Local administration and Remote administration?
Local Administration: Means carrying out administration tasks on any queue managers you
have defined on your local system.
Remote Administration: This allows you to issue commands from your local system that are
processed on another system. For example, you can issue a remote command to change a
queue definition on a remote queue manager. You do not have to log on to that system,
although you do need to have the appropriate channels defined. The queue manager and
command server on the target system must be running
Runmqsc command modes?
Verification Mode
Direct Mode
Indirect Mode
A queue manager that hosts a complete set of information about every queue manager in the
cluster is referred to as having a full repository for the cluster. The other queue managers in
the cluster inquire about the information in the full repositories and build up their own subsets
of this information in partial repositories. A partial repository contains information about only
those queue managers with which the queue manager needs to exchange messages. The
queue managers request updates to the information they need, so that if it changes, the full
repository queue manager will send them the new information
Where does each queue manager store its repository information?
SYSTEM.CLUSTER.REPOSITORY.QUEUE
Where do the queue managers exchange repository information?
SYSTEM.CLUSTER.COMMAND.QUEUE
What are Channel Initiator?
Channel initiator is the program that monitors the initiation queue and starts
the sender MCA
What are channel listeners?
A channel listener program listens for incoming network requests and starts the appropriate
receiver channel when it is needed
What is MQOO_BIND_ON_OPEN option on the MQOPEN call ?
When this attribute is set it forces all the messages sent to this queue to be sent to the same
instance of the queue (go to the same queue in cluster)
Difference between MQPUT and MQPUT1 call ?
The MQPUT1 call always operates as though MQOO_BIND_NOT_FIXED were in effect, that
is, it always invokes the workload management routine.
What happens when a queue manager fails? What happens if I put-disable a cluster queue?
How long do the queue manager repositories retain information?
It must be 90 days but the Qm sends information to all the QMs in the cluster to update its
information around 30 days
When is Channel security exit program called?
Are called at MCA initiation and termination
Stopping unauthorized queue managers putting messages on your queues
Use OS security, Object Authority Manager (OAM) on WebSphere MQ user-written
procedures
What is intercommunication and its components to send message ?
Intercommunication means sending messages from one queue manager to another. The
receiving queue manager could be on the same machine or another; nearby or on the other
side of the world. It could be running on the same platform as the local queue manager, or
could be on any of the platforms supported by WebSphere MQ. This is called a distributed
environment.
Message channels
Transmission queues
Channel-exit programs
What is Message Channels and How many types?
Message channels are the channels that carry messages from one queue manager to
another.They are Uni-directional Channels.
1. Sender Channel
2. Server Channel
3. Cluster-sender channel
4.Receiver Channel
5.Requester Channel
6.Cluster-receiver channel
2. Client-connection
4.Requester-server Channel
5. Server-receiver Channel
6.Client-Server Channel
Channel Attributes:
Batch Heartbeat Interval (BATCHHB): This heartbeat interval allows a sending channel to
verify that the receiving channel is still active just before committing a batch of messages. If
the receiving channel is not active, the batch can be backed out rather than becoming indoubt, Batch interval (BATCHINT), Batch size (BATCHSZ), Channel type (CHLTYPE), Cluster
(CLUSTER), Cluster namelist (CLUSNL), Connection name (CONNAME), Convert message
(CONVERT), Disconnect interval (DISCINT), Heartbeat interval (HBINT), KeepAlive Interval
(KAINT), Long retry count (LONGRTY), Long retry interval (LONGTMR), Maximum message
length (MAXMSGL)
What is channel disconnect interval?
This is a time-out attribute, specified in seconds, for the server, cluster-sender, and cluster-
receiver channels. The interval is measured from the point at which a batch ends, that is
when the batch size is reached or when the batch interval expires and the transmission queue
becomes empty. If no messages arrive on the transmission queue during the specified time
interval, the channel closes down
Explain the channel attribute BATCHSIZE?
BATCHSIZE denotes the maximum number of messages that can be sent through a channel
before taking a checkpoint. This parameter is valid only for channels with a channel type
(CHLTYPE) of SDR, SVR, RCVR, RQSTR, CLUSSDR, or CLUSRCVR. The value must be in
the range 1 through 9999.
What are the ways to start a channel?
Use the MQSC command START CHANNEL
Use the control command runmqchl to start the channel as a process
Use the channel initiator to trigger the channel
Type of channel states:
Inactive and Current- Stopped, Starting, Retrying and Active
What are the three options for stopping channels?
QUIESCE
FORCE
TERMINATE
Due to:
5.TriggerTurned
Transport-retry Exit
QName
QMgrName
the message to other unit of work that the application is performing. The correlation identifier
is a permanent property of the message, and persists across restarts of the queue manager
Explain commit and Back Out units of work?
When a program puts a message on a queue within a unit of work, that message is made
visible to other programs only when the program commits the unit of work.
Commit: To commit a unit of work, all updates must be successful to preserve data integrity. If
the program detects an error and decides that the put operation should not be made
permanent, it can back out the unit of work.
Back Out: When a program performs a back out, WebSphere MQ restores the queue by
removing the messages that were put on the queue by that unit of work. The way in which the
program performs the commit and back out operations depends on the environment in which
the program is running
BackoutCount (MQLONG)?
This is a count of the number of times that the message has been previously returned by the
MQGET call as part of a unit of work, and subsequently backed out. BackoutCount is the
number of times the application tried and failed to put the messages in the Queue
What is segmentation and explain segmentation Flag?
When a message is too big for a queue, an attempt to put the message on the queue usually
fails. Segmentation is a technique whereby the queue manager or application splits the
message into smaller pieces called segments, and places each segment on the queue as a
separate physical message. The application that retrieves the message can either retrieve the
segments one by one, or request the queue manager to reassemble the segments into a
single message that is returned by the MQGET call.
What are Namelist? when do you use it?
A namelist is a WebSphere MQ object that contains a list of other WebSphere MQ objects.
Typically, namelists are used
By trigger monitors, where they are used to identify a group of queues.
Namelists are also used with queue manager clusters to maintain a list of clusters referred
to by more than one WebSphere MQ object.
The advantage of using a namelist is that it is maintained independently of applications; it
can be updated without stopping any of the applications that use it. Also, if one application
fails, the namelist is not affected and other applications can continue using it. Namelists are
also used with queue manager clusters to maintain a list of clusters referred to by more than
one WebSphere MQ object
Command to create a queue manager?
crtmqm
-q
-d
MY.DEFAULT.XMIT.QUEUE
SYSTEM.DEAD.LETTER.QUEUE
SATURN.QUEUE.MANAGER
Why is Channel RETRYINT attribute used?
If a message is places in DLQ because of put inhibited or queue full condition, the DLQ
handler attempts to put the message back to the destination queue. This interval is called as
RETRYINT by default the retry interval is 60 seconds.
Receiver
Cluster Receiver
Requester
What is Local units of work (uses a single-phase commit process) and Global unit of Work
(uses a two-phase commit process)?
Local unit of work: Units of work that involve only the queue manager are called local units of
work. Syncpoint coordination is provided by the queue manager itself (internal coordination)
using a single-phase commit process.
Use global units of work when you also need to include updates to resources belonging to
other resource managers. Here the coordination can be internal or external to the queue
manager uses a two-phase commit
Stopping a Queue manager manually?
For Win NT: use endmqm command or WebSphere MQ service from Services on the
Windows Control Panel
For Unix/AIX: use ps command to find the process Ids that are still running Ex: ps ef | grep
QMNAME, then use kill command to kill the running process
Endmqm -I -c -w
-p Qmgrname
Stop: endmqcsv
When we use CCSID attribute of the ALTER QMGR command to change the CCSID of the
QM what are the components that need to be restarted?
Stop and restart the queue manager, stop and restart command server (A command server
processes command messages) and channel programs
What is a MQ Series Configuration file (mqs.ini),Queue manager Configuration file
(qm.ini)?
A queue manager configuration file (qm.ini) to effect changes for specific queue managers.
There is one qm.ini file for each queue manager on the node. (A queue manager
configuration file, qm.ini, contains config information relevant to a specific queue manager.
There is one queue manager configuration file for each queue manager. The qm.ini file is
automatically created when the queue manager with which it is associated is created. For
example, the path and the name for a configuration file for a queue manager called QMNAME
is:/var/mqm/qmgrs/QMNAME/qm.ini)
What is name transformation in naming a Queue manager Configuration File?
A qm.ini file is held in the root of the directory tree occupied by the queue manager. For
example, the path and the name for a configuration file for a queue manager called QMNAME
is: /var/mqm/qmgrs/QMNAME/qm.ini A directory name is generated based on the queue
manager name. This process is known as name transformation.
When security checks are made?
Connecting to the queue manager (MQCONN or MQCONNX calls), Opening the object
(MQOPEN or MQPUT1 calls), Putting and getting messages (MQPUT or MQGET calls),
Closing the object (MQCLOSE)
What is a Websphere MQ configuration file (mqs.ini)?
Contains information relevant to all the queue managers on the node. It is created
automatically during installation (The WebSphere MQ configuration file, mqs.ini, contains
information relevant to all the queue managers on the node. It is created automatically during
installation. The mqs.ini file for WebSphere MQ for UNIX systems is in the /var/mqm directory.
It contains: v The names of the queue managers v The name of the default queue manager
The location of the files associated with each of them)
How can we edit the configuration files?
Automatically using commands that change the configuration of queue managers on the
node, Manually using a standard text editor
What is FFST?
First Failure Support Technology For MQSeries for UNIX systems, FFST information is
recorded in a file in the /var/mqm/errors directory. These errors are normally severe,
unrecoverable errors, and indicate either a configuration problem with the system or an
MQSeries internal error. The files are named AMQnnnnn.mm.FDC, where: nnnnn Is the ID of
the process reporting the error mm Is a sequence number, normally 0 When a process
creates an FFST record, it also sends a record to syslog. The record contains the name of the
FFST file to assist in automatic problem tracking
What are logs, Log Sizes, what are uses ?
Log Sizes:
Log Primary :
IN win 2-253
In Unix 2-510
In Unix 2-509
Type of Logging in MQ
Circular: Circular logging rotates the logs every and so overwrites the existing logs
Linear: Linear logging will not rotate log files but keeps the log data in a continuous sequence
of files. New log files are added if there is more data to be logged
Creating Damaged Objects Using Log files?
1.Rcdmqimg: Use this command to write an image of an object, or group of objects,
to the log for use in media recovery. This command can only be used when using
linear logging.
Use the associated command rcrmqobj to recreate the object from the image.
2.Rcrmqobj: Use this command to recreate an object, or group of objects, from their
images contained in the log. This command can only be used when using linear
logging
Use the associated command, rcdmqimg, to record the object images to the log.
Types of recovery:
Media recovery:
Digital certificates
ends of an SSL connection must agree the same CipherSpec to be able to communicate.
What are the steps to be followed in working with SSL on an UNIX environment?
1.Setting up a key repository
2.Working with a key repository
3.Obtaining personal certificates
Request:
Reply:
Report:
Sizes ?
Qmanager10000 Msgs
Queue5000 Msgs
Maxmsglength4 Mb
Maxmsglength4 Mb
What is CCSID?
This defines the character set of character data in the message. If you want to set this
character set to that of the queue manager, you can set this field to the constant
MQCCSI_Q_MGR or MQCCSI_INHERIT. When you get a message from a queue, compare
the value of the CodedCharSetId field with the value that your application is expecting. If the
two values differ, you might need to convert any character data in the message or use a dataconversion message exit if one is available
Types of Queue?
Local Queue
Model Queue
Remote Queues
Dynamic Queues
Alias Queues
Cluster Queues.
Queue: A safe place to store messages for Prior-To-Delivery, it belongs to the Qmgr to which
the application is connected.
Model Queue: Model queue is a template of a queue definition that uses when creating a
dynamic queue.
Alias Queue: Queue definition, which is Alias to an actual Local or Remote Q. Used for
security and easy maintenance.
Remote Queue: Object that defines a Queue belongs to another Q Manager (Logical Def).
Initiation Queue: An initiation queue is a local queue to which the queue manager writes a
trigger message when certain conditions are met on another local queue
Dynamic Queue: Such a queue is defined "on the fly" when the application needs it.
Dynamic queues may be retained by the queue manager or automatically deleted when the
application program ends. Use- To store intermediate results.
Cluster Queue: Custer queue is a local queue that is known throughout a cluster of queue
managers.
Reply-To-Queue: A request message must contain the name of the queue into which the
responding program must put the Reply Message.
Queue Manager: Provides Messaging services and manages the Queues, Channels, and
Processes that belongs to it.
Alias Q Manager: Queue-manager aliases, are created using a remote-queue definition with
a blank RNAME.
Channel: Communication Paths between Queue Managers.
Default objects:
(43 objects)
SYSTEM.CHANNEL.INITQ SYSTEM.CHANNEL.SYNCQ
Admin Queues:
SYSTEM.ADMIN.ACCOUNTING.QUEUE
SYSTEM.ADMIN.ACTIVITY.QUEUE
SYSTEM.ADMIN.COMMAND.QUEUE
SYSTEM.ADMIN.STATISTICS.QUEUE
SYSTEM.ADMIN.TRACE.ROUTE.QUEUE
Channels:
SYSTEM.AUTO.RECEIVER
SYSTEM.AUTO.SVRCONN
SYSTEM.DEF.CLUSRCVR
SYSTEM.DEF.CLUSSDR
SYSTEM.DEF.RECEIVER
SYSTEM.DEF.REQUESTER
SYSTEM.DEF.SENDER
SYSTEM.DEF.SERVER
SYSTEM.DEF.SVRCONN
Listeners:
SYSTEM.DEFAULT.LISTENER.TCP
SYSTEM.DEFAULT.LISTENER.SPX
SYSTEM.DEFAULT.LISTENER.NETBIOS
SYSTEM.DEFAULT.LISTENER.LU62
SYSTEM.DEFAULT.SERVICE
Name Lists:
SYSTEM.DEFAULT.NAMELIS
SYSTEM.BROKER
What are the parameters required to put a message on a queue (or) putting a message on
queue parameters?
Requires a Connection handler (Hconn), a Queue handler (Hobj), a description of the
message that you want to put on the queue (MQMD), Control information, message length,
the message data itself
Getting messages for a queue?
You can remove a message from the queue so that other programs can no longer see the
message, you can copy a message, leaving the original message on the queue. This is
known as browsing. You can remove the message once you have browsed it. In both cases,
you use the MQGET call, but first your application must be connected to the queue manager,
and you must use the MQOPEN call to open the queue
What are Persistent & Non-Persistent messages?
Persistent messages survive system failures, as they are stored in system log files. However
non persistent message will be lost if a system failure occurs
Persistent messages are used to ensure guaranteed delivery of messages to the target
queue manager even if there are system failures, Non-persistent messages are used when
the source can reproduce the messages
What happens when a message is put in a PUT-INHIBITED Queue?
The messages are put in the dead letter queue. If a channel is unable to put a message to the
target queue because that queue is full or put inhibited, the channel can retry the operation a
number of times (specified in the message-retry count attribute) at a given time interval
(specified in the message-retry interval attribute). Alternatively, you can write your own
message-retry exit that determines which circumstances cause a retry, and the number of
attempts made. The channel goes to PAUSED state while waiting for the message-retry
interval to finish
What is syncpoints?
Syncpoint coordination is the process by which units of work are either committed or backed
out with data integrity. The decision to commit or back out the changes is taken, in the
simplest case, at the end of a transaction. However, it can be more useful for an application to
synchronize data changes at other logical points within a transaction.
These logical points are called syncpoints (or synchronization points) and the period of
processing a set of updates between two syncpoints is called a unit of work
What is a Trigger monitor?
A trigger monitor is a continuously - running program that serves one or more initiation
queues. When a trigger message arrives on an initiation queue, the trigger monitor retrieves
the message. The trigger monitor uses the information in the trigger message. It issues a
command to start the corresponding application/channel
What are the Trigger types available Explain?
EVERY: A trigger event occurs every time that a message arrives on the application queue.
Use this type of trigger if you want a serving program to process only one message, then end.
FIRST: A trigger event occurs only when the number of messages on the application queue
changes from zero to one. Use this type of trigger if you want a serving program to start when
the first message arrives on a queue, continue until there are no more messages to process,
then end.
DEPTH: A trigger event occurs only when the number of messages on the application queue
reaches the value of the TriggerDepth attribute.
What is key repository?
IS used to describe the store for digital certificates and their associated private keys.
In-doubt Channels?
An in-doubt channel is a channel that is indoubt with the remote channel about which
messages has been sent and received
Scenarios:
Queue open failed?
*Reason: On an MQCONN or MQCONNX
the QMgrName parameter is not valid or not known
call,
the
value
specified
for
Is a kernels process
Advance Interactive X-change
the specified conversions, then copies the converted data to the Out File parameter or
standard output
What is Del command?
Deletes files if the request is confirmed, The del command displays the list of specified files
and asks you to confirm your request to delete the group of files
What is Df command?
Reports information about space on file systems
What is Diff command?
Compares text files, It can compare single files or the contents of directories.
What is Du command?
The du command displays the number of blocks used for files
What is Fc command?
Processes the command history list.
What is grep command / fgrep command?
Searches a file for a literal string.
What is IKEYCMD command?
Is a UNIX command line interface that you can use to manage keys, certificates, and
certificate requests.
What is semaphore?
A semaphore is a special variable that takes only whole positive numbers and upon which
only two operations are allowed: wait (P) and signal (V). They are used to ensure that a single
executing process has exclusive access to a resource
What is Pipe?
A pipe is a half-duplex communication channel defined by two file descriptors, one open for
writing and one for reading, such that what is written in the former pops out in the latter. Using
pipes command can be joined so one input to another.
What is kernel?
Interacts directly with the HW and provides the service to the user programs
What is Shell script?
A shell is a command interpreter. That can interact with the Kernel through the shell
(program). We can write ASCII (text) scripts to be acted upon by the shell
What is a command?
This command counts the number of processes running on your computer system
wc -l
ps ef This command counts the number of users logged into your computer system.
who | wc -l
command,
The
the
wc
"grep" This command as a "search" command (most people wish it was named "search"). It
is used to search for text strings within one or more files.
"find" This command is very powerful. It can search the entire filesystem for one or more files
that you specify to look for. This is very helpful when a file has been "lost" .Ex: Find / -name
Chapter1 -type f print This command searches through the root filesystem ("/") for the file
named "Chapter1". If it finds the file, it prints the location to the screen
More about Vi editor:
Three distinct modes of Vi Editor:
Input mode
Input Mode:
Command Mode:
Command mode
Last Line Mode: Lets you enter commands that appear on the bottom line of the screen,
and can affect the editing environment or interact with the external environment
Notes: When you first open a file, your default mode is command mode
To switch from command mode to input mode use the command mode commands
insert(i)
append(a)
open(o)
i- insert a new text in front of a current character
dew
dd
ssndd
d
?text
within transactions. Non persistent messages are lost if there is a transmission failure or if the
channel stops when the messages are in transit.
What is SSL?
Secure Sockets Layer (SSL) is a protocol designed to allow the transmission of secure data
over an insecure network. SSL makes use of digital certificates to enable authentication of the
partner. It also uses encryption to prevent eavesdropping and hash functions to enable
detection of tampering. It can be used with both MCA channels for queue manager to queue
manager communication and MQI channels for client applications connecting to a queue
manager
What are the algorithms in SSL?
A CipherSuite is a suite of cryptographic algorithms used by an SSL connection. A suite
comprises three distinct algorithms:
The key exchange and authentication algorithm, used during the SSL handshake
The encryption algorithm, used to encipher the data
The MAC (Message Authentication Code) algorithm, used to generate the message digest
Clusters:
Some important MQSC commands that work with cluster
DISPLAY CLUSQMGR
SUSPEND CLUSQMGR
RESUME CLUSQMGR
REFRESH CLUSTER
RESET CLUSTER
What are the Advantages of clustering?
Advantages: Reduced system administration
Increased high availability
Improved resource utilization
Workload sharing
What is Cluster queue manager?
A cluster Queue manager is a queue manager that is a member of a cluster. A queue
manager can be a member of more than one cluster
What happens when we give a Refresh Cluster mqsc command ?
This command issued on a queue manager, the queue manager discard all locally held
information about a cluster except the FULL repository information. This enables you to
This enables workload balancing for messages coming from outside the cluster.
How will you keep a cluster secure?
Stopping the unauthorized Queue manager sending message to your Queue manager
Stopping unauthorized Queue manager putting messages on your Queues
Stopping Your Queue manager putting messages to remote Queues
Preventing Queue manager from joining a cluster: Define a channel security exit program
Forcing unwanted queue manager to leave a cluster
Adding a new Queue manager to a cluster?
Determine the Full repository to which the QM should refer
Define the CLUSRCVR channel
Define the CLUSSDR channel on the QM
Review the application for message affinities
Removing a cluster queue from a Queue manager?
Indicate the Queue is no longer available remove the CLUSTER name from the local queue
definition (ALTER QLOCAL(localqueue) CLUSTER())
Disable the Queue ALTER QLOCAL(localqueue) PUT(DISABLE)
Monitor the Queue until it is EMPTY
Monitor the channel to ensure that there is no in-doubt message
Delete the Queue
Removing a Queue Manager form a Cluster?
Suspend the QM (SUSPEND QMGR CLUSTER(clusname))
Remove the CLUSRCVR channel definition
Stop the CLUSRCVR channel
Delete the CLUSSDR channel definition
Converting an existing network to cluster?
1. Persistent msgs are important, at any cost those must be deliver to destination QM,if any problem
occur Those are placed in Xmitq or in DLQ.
2. Nonpersistent msgs are not important; if any problem occurs those are discarded.
7.
How many Qmgrs are in your current project?
Nearly 400.
8.
How do you convert linear to circular?
we dont have that type of operation if you want to change,
1. First stop the channels
2. Stop the Qmgr
3. Take the back up of qmanager using save queue manager
4. Delete the Qmgr
5. Recreate it with linear logging
6. Recreate all the queue definitions and give the permission to the queues
9.
How many applications connect to your current project?
Display conn(*)
10.
What is the backup Queue of the QMGR?
Dead letter queue
11.
How you set Authentication?
Using SETMQAUT, this is used assign permissions to the user
SETMQAUT -M QMname -n objname -t objtype -p principle/-g group +all
dmpmqaut -m qmname -n objectname -t objecttype -p user to display set of all users given permission
on the object
dspmqaut ------ to display set of all the permission for the user on the object
12.
Will you give permission only for USER or GROUP, if GROUP why?
We can assign permissions to user and if you want assign permissions to group also.if asign
permissions to group that are assign all the user who are under that group.
13.
Difference between Receiver & Requester channel?
requester and reciver are same except that the reuqesters can starts the sender from requester side.
14.
Reason codes for 2033, 2053, 2085, 2035, 2537
2033: Msg not available
2053: Q full
2085: unknown obj name
2035: Not authorized
2537: channel not available
2016 (07E0) (RC2016): MQRC_GET_INHIBITED
2030 (07EE) (RC2030): MQRC_MSG_TOO_BIG_FOR_Q
2031 (07EF) (RC2031): MQRC_MSG_TOO_BIG_FOR_Q_MGR
2042 (07FA) (RC2042): MQRC_OBJECT_IN_USE
2051 (0803) (RC2051): MQRC_PUT_INHIBITED
2057 (0809) (RC2057): MQRC_Q_TYPE_ERROR
2058 (080A) (RC2058): MQRC_Q_MGR_NAME_ERROR
2059 (080B) (RC2059): MQRC_Q_MGR_NOT_AVAILABLE
15.
What are the errors we can get at the time of installation?
1. user is not a member of mqm group.
2. Some mq series processes are running while installing.
18.
How do you connect MQ Client to MQ Server?
we have three types options for connecting client to server
1.MQCONNX
2.MQSERVER
3.Clientchannel tab
19.
Qmgr attributes?
dEADQ,REPOS(),REPOSNL(),CLWLUSEQ(),MAXHANDS(),MAXPRTY()
20.
What is listener and port?
Listener is a program running continuously listening for request msg from sdr
Port:unique entry point for a QManager
21.
Where the configuration information stores on Linux and windows?
in windows it is stored at registry. in linux it is stored in mqs.ini file.
22.
What is the difference between qm.ini and mqs.ini file?
A queue manager configuration file, qm.ini, contains information relevant to a specific queue manager.
There is one queue manager configuration file for each queue manager. The qm.ini file is automatically
created when the queue manager with which it is associated is created.
The WebSphere MQ configuration file, mqs.ini, contains information relevant to all the queue
managers on a WebSphere MQ installation. It is created automatically during installation. In particular,
the mqs.ini file is used to locate the data associated with each queue manager
23.
Difference between upgradation and migration?
---->An "upgrade" generally refers to an enhanced version of the software
---->if you migrate from a previous version of WebSphere MQ for Linux, you must uninstall your
current version before installing WebSphere MQ Version
24.
28.
Which monitoring tool you are using?
BMC Main View , AppWatch
29.
Your mail server and chat server? (Basic questions)
lOTUSNODES, sametime
Microsoft outlook, office communicator
30.
At which location your L3 team will be?
Client location
31.
How can you recover the damaged object and its syntax?
using media recovery we can recreate damaged objects
rcrmqobj -m Qmname -t objtype -n objname
32.
Channel attributes?
chltype(),discint(),batchhb(),trptype(),maxmsgl(),xmitq() conname() rqmname()
33.
Different status of channel?
initializing,binding,retrying,running,inactive,stopped,paused
34.
Why do we go for MQ Client?
. No need for a full WebSphere MQ implementation on the client machine.
. Hardware requirements on the client system are reduced.
. System administration requirements are reduced.
. Application running on a client can connect to multiple queue managers on different systems.
. Alternative channels using different transmission protocols can be used
. Reduce the burden on other clients
35.
Do you raise any PMR so far?
i have never raised PMR(problem management record)
36.
Who send the tickets to you?
users, application team, all the members who are involved in the current project
37.
Have you ever raised any tickets so far?
yes.
38.
Have you ever raised change order?
No
40.
MQI channels are used between MQ client and MQ sever, those are bi-directional
Types: server connection channel
Client connection channel
MSG channels are uni-directional, and used between QM
1. Sender
2. Receiver
3. Cluster sender
4.cluster rceiver
5.server
6. Client
7.requster
70.
Default objects in Cluster?
SYSTEM.CLUSTER.REPOSITORY.QUEUE
SYSTEM.CLUSTER.COMMAND.QUEUE
SYSTEM.CLUSTER.TRANSMISSION.QUEUE
Queues and channels.
41.
Difference between Dead-Letter Header and Handler?
if msga are come to DLQ, QM will add dead letter header to msg,it contains reason for failure,
destination queue and QM details such type of infon
using dead letter handler you pick the msgs from DLQ placed it in destination queue
42.
What is sync point?
This is nothing but unit of work in two phase commit
43.
Tell me something about unit of work?
the period of updates between two sync points is called unit of work.
44.
Can you change the log file size?
No.
45.
Where the latest information stores in error logs and why?
In the first file.
46.
Can you increase the no. of error logs?
no
47.
Do you run the runmqdlq program every time?
Depending upon the messages those are coming to the DLQ.
48.
What is the use of telnet, ping and tracert?
ping is used to check the status of remote channel.
telnet is used for remote access of another system.
it shows path taken to reach a particular destination over a network.
49.
How can you connect to remote server from your desktop?
Using MSTSC
50.
How many primary and secondary logs we can create on windows & Linux (Max)?
windows:primary file:254 ,secondary:253
linux:primary files:510,secondary:509
51.
What are the attributes of workload balance?
Defbind(notfixed)
put()
clwluseq(local/any/QMGR)
clwlrank(0-9)
clwlprty(0-9)
clwlwght()
clwlmruse()
52.
How can we take the Qmgr backup?
- create the backup queue manager
- copy the data and log files from your primary queue manager over the backup queue manager's data
and logs
- flag backup qmgr as a backup and replay log extents (strmqm -r)
- periodically copy over the log files prior to the CURRLOG value from the queue manager
saveqmgr -m MQ_BACKUP -r MQ_C1_01 -f MQ_C1_01.txt
53.
Error log file name?
error log file name is:AMQERR01,AMQERR02,AMQERR03
54.
What is the use of client channel tables?
Using client channel table we can connect with different QMs and different clients will connect to
single QM
55.
How many max channels can connect to a Qmgr?
The default for maximum channels is 100 for qmgr. it can be set to higher in the qm.ini.
56.
How can you find the max channels are connected to a Qmgr?
dis qmstatus conns
57.
Channel components?
chltype() conname() trptype() xmitq() batchsz() hbint()
58.
What is the use of trig data in channel?
which chnnel you want to up at trigger event fired.provide channel name
59.
What does initiation queue contain?
This will contains trigger massage generated by QM
60.
Channel in doubt and in flight state?
The INDOUBT count specifies the number that were interrupted between phase-1 and phase-2 of the
commit process. These must undergo forward recovery to ensure that resources modified by them are
unavailable until their INDOUBT status is resolved.
The INFLIGHT count specifies the number that neither completed phase-1 of the commit process nor
began the process of backing out. These must undergo backward recovery to restore resources modified
by them to their previous consistent state
61.
How can we check whether the Qmgr contain Dead-latter queue or not?
DIS QMGR DEADQ(*)
62.
What does contain in Auto define channel?
It contains channel name, port No. and Ip address That are mentioned in the Receiver channel
63.
How many servers, Qmgrs in your environment?
100 servers. 400 qmgrs.
64. Which programs you use for running the trigger monitor when you use your own initiation
queue?(in application and channel triggering)
In application triggering we are using RUNMQTRM
in channel RUNMQCHI INITQ()
65. What is the default size of /var /mqm and /opt /mqm?
Allow 130 MB as a minimum for a WebSphere MQ server and 15 MB as a minimum for a WebSphere
MQ client.
x-86 201 mb iseries -183
66. What is the difference between Control & Runmqsc Commands?
RUNMQSC commands are used with in Qm for creating Qm objects and altering QMGR.
CONTROL commands are used for creating starting and running QM, and for set authentication ...
67.
In Cluster for Round-Robin process defbind (open) what is happen?
if you set defbind open, all msgs are placed where the first msg is place
68. What is difference between distribution and clustering?
in distributions queing we have to create more no of objects like remoteqs. transmission ques and
sender, reciever channels for every remote queue manager.
in clustering we can logically connect queue managers with the creation of less no.of qmgr objects .
69. Why we go for clustering?
1.simplifying system administration
2.work load management
3.less no of qm objects like rqd, channels.
4.high availability
70.
Difference between Full & Partial Repository?
Full repository: This will contains all the information of Cluster QMgrs and other objects.
Partial repository: This will Contains the information of that particular Qmgr and Other instances for
communication.
71.
Where do we find the cluster information?
We have one Queue i.e SYSTEM.CLUSTER.REPOSITORY.QUEUE, in that all the cluster info will
stored
72.
In cluster we have 4 Qmgrs and having same instance in all Qmgrs I have to send messages to a
particular Qmgr then how u configure?
assign clwlrank and clwlprty for particular queue.
73.
Why do we go clustering?
we have so many advantages using cluster
1.administration task will be redused
2.work load balancing
3.increase resource utilization
4.high availability
74.
Components of the cluster?
Clussend and clusrcvr channels
SYSTEM.CLUSTER.REPOSITORY.QUEUE
SYSTEM.CLUSTER.COMMAND.QUEUE
SYSTEM.CLUSTER.TANSMISSION.QUEUE (Please do not disable the put or get attribute on
cluster)
75.
How to Suspend a Qmgr from the cluster?
Suspend qmgr cluster (clusname)
76.
How to add existing Qmgr into the cluster?
If you add it as full repository, you need to add repos keyword to Qm, and create one clussdr and
clusrcvr channels, add cluster attributes to other objects
If you want to add it as partial repository, create clusrcvr channel to that QM and a clussdr to a queue
manager in full repository and set cluster attribute to objects
77.
What is the use of alias queue?
This queue is act as reference queue to local, remote and cluster queues.
the advantage of alias queue is
1. Hide the details of reference queue to clients.
2. used for follow the naming conventions,
3. Provide different levels of access.
Why do we give Conname at Receiver Channel side in Cluster?
In cluster sdr channels are auto generated, based on the receiver channel attributes only the sdr channel
will generated
78.
R u configured SSL setup?
yes.
ssl address following important security considerations.
1.authantication
2.confidentiality
3.integrity
to install and configure ssl we need
1. a server certificate key store.
2. an https connector
79. Which key u r using in SSL?
symmetric key--- secret keys
Asymmetric key----------public private key pairs
80. What is the command to see the authentications?
DSPMQAUT: It will display the authenticated users
114. What may be reasons for getting channel is in retrying state?
1. if other side receiver channel is not defined
2. may channel was not started
81. What are the reasons for getting messages in dead letter queue?
1.if queue is full
2. Queue put inhibited.
3.Mags length is exceeded
82. What happen to messages (persistence& non persistence) if destination queue is full if there is
no dead letter queue?
PERSISTENT: if queue is full, msg are coming back to xmitq and channel will be going to retrying
state.
NON-PERSISTENT: That type of msgs are discarded.
83. What is channel state in above case?
retrying
84 Tel me some system default queues?
1.SYSTEM.DEFAULT.ALIAS.QUEUE
2.SYSTEM.DEFAULT.INITIATIONS.QUEUE
3.SYSTEM.DEFAULT.LOCAL.QUEUE
4.SYSTEM.DEFAULT.MODELS.QUEUE
5.SYSTEM.DEFAULT.REMOTE..QUEUE
85.can we define remote queue defination without XMITQ? is it working?
we can define remote queue defination without XMITQ,but XMITQ name should be remote Queue
manager name.
86.can we take the backup from XMIT queue massages?
when you are trying to get the backup of xmit queue massages,it will store error information the file. i.e
2016=MQRC_GET_INHIBITED.
87.How to take backup of massages from queue?
amqbcg Qname QMname > E:/mq
88.how to increase no. of primary and secondary log files size?
Go to registry edit,in that only you can change the number of primary and secondary files.after
changing the number ,imediatlly those are not effected,when the default primary files are full than only
other files are come into picture.
89.
What are the different types of Logs?
We have two types of logs.
1. Transactional logs:
2. Error logs.
90.
Difference between Errors and Qmgr errors?
Errors: This will contain all S/W level errors and Information
QMGR:This will contains all the information of QMGR objects and errors
91.
How you enable Trace?
* Or start a high detail trace for one queue manager:
strmqtrc -t all -t detail -m MY.QMGR
* Or start a high detail wrapping trace and limit the file size to 5MB :
strmqtrc -l 5 -t all -t detail -m MY.QMGR
# End all tracing:
endmqtrc -a
# Format the trace files:
dspmqtrc *.TRC
Or format wrapping trace files:
dspmqtrc *.TRC *.TRS
92.
What does the FDC contain?
FDC File:Failure data capture,If any S/W related error occurs this file will be created,in FDC we have
prob-Id based on that we will find the solution in IBM Tech notes.
probid
userid
application name
major error code
minor error code
problem civierty
probtype
process
93.
Which types of Logs are using in your Organization?
Depending upon client requirement we are using both linear and circular loggings
94.
How you check the Status of the Queue?
dis qs(qname) type(handle)
95.
Default path of the Error logs & Transaction Logs?
In windows:\Program files\IBM/Web spear MQ\Log\ Qmgrs\active
C:\Program file\IBM\Web spear MQ\Qmgrs\QMname\Errors
In Unix:/var/mqm/log/Qmgrs/active
/var/mqm/Qmgrs/Qmname/errors
96.
What is the use of PROBID in Fdc?
Using ProbID: we can find the solution in IBM info center, If before anybody face that problem,
otherwise we will rise PMR(problem management report) and it will contains Application name, major
error, minor error and so on..
97.
Difference stopping status of QMGRs?
End immediately, End abnormally, ended normally
98.
How do you enable the Trigger?
we need to set some properties on queues
Trigger on
Trigtype (First/every/depth)
Trigdepth
Trigdata(chalname)
initq()
What is MQ and what does it do?
Ans. MQ stands for MESSAGE QUEUEING. WebSphere MQ allows application programs to use
message queuing to participate in message-driven processing. Application programs can communicate
across different platforms by using the appropriate message queuing software products.
What is Message driven process?
Ans . When messages arrive on a queue, they can automatically start an application using triggering. If
necessary, the applications can be stopped when the message (or messages) have been processed.
What are advantages of the MQ?
Ans. 1. Integration.
2. Asynchrony
3. Assured Delivery
4. Scalability.
How does it support the Integration?
Ans. Because the MQ is independent of the Operating System you use i.e. it may be Windows,
Solaris,AIX.It is independent of the protocol (i.e. TCP/IP, LU6.2, SNA, NetBIOS, UDP).It is not
required that both the sender and receiver should be running on the same platform
What is Asynchrony?
Ans. With message queuing, the exchange of messages between the sending and receiving programs is
independent of time. This means that the sending and receiving application programs are decoupled;
the sender can continue processing without having to wait for the receiver to acknowledge receipt of
the message. The target application does not even have to be running when the message is sent. It can
retrieve the message after it is has been started.
What are the hardware and Software requirements for MQ Installation in AIX?
Ans. WebSphere MQ for AIX, V5.3 runs on any machine that supports the AIX V4.3.3 PowerPC
32.bit, or AIX V5.1 Power 32 bit only operating system.
Disk Storage: Typical storage requirements are as follows:
1 Server installation: 50 MB
2. Client installation: 15 MB
3 Data storage (server): 50 MB
4. Data storage (client): 5 MB.
Software Requirements:
Operating system: The operating systems supported by WebSphere MQ for AIX, V5.3 are:
1. AIX V4.3.3, with PTF U472177, running in a 32 bit environment, on 32 or 64 bit hardware.
2. AIX V5.1, with PTFs U476879, U477366, U477367 and U477368, and APAR fix IY29345 running
32 bit kernel running on 32 or 64 bit hardware.
3. AIX V5.1, with PTF U476879, U477366, U477367 and U477368, and APAR fix IY29345 running
64 bit kernel running on 64 bit hardware.
Connectivity The network protocols supported by WebSphere MQ for AIX, V5.3 are:
1. TCP/IP
2. SNA LU 6.2.
Databases: DB2 7.1, 7.2
Oracle 8i and 9i
Sybase v12 or v 12.5
Java: If you want to use the Java Messaging Support, you need the Java Runtime Environment Version
1.3 or later
What are the software and hardware requirements for installing MQ on Windows?
Ans: MQ v 5.3 supports Windows 2000, Windows 2000XP,Windows 2000NT,
Ans: The default maximum message length is 4 MB, although you can increase this to a maximum
length of 100 MB (where 1 MB equals 1 048 576 bytes).
What is the difference between Persistent and Non Persistent Messages?
Ans: In Web Sphere MQ, messages can be either persistent or non persistent. Persistent messages are
logged and can be recovered in the event of a WebSphere MQ failure. Thus, persistent messages are
guaranteed to be delivered once and only once. Nonpersistent messages are not logged. Web Sphere
still guarantees to deliver them not more than once, but it does not promise to deliver them once.
What is the effect of using Persistant messages?
Ans: Persistent messages are usually logged. Logging messages reduces the performance of your
application, so use persistent messages for essential data only. If the data in a message can be discarded
if the queue manager stops or fails, use a nonpersistent message.
WebSphere MQ messages:
Messages are made up of Two parts: Message descriptor, Application data
Types of messages?
Datagram: A Message sent with no response expected.
Request: A Message sent for which a response is expected.
Reply: A Response Message for a requested message.
Report: A Message that describes the occurrence or event
Ex COA/COD
Sizes ?
Qmanager10000 Msgs Maxmsglength4 Mb
Queue5000 Msgs Maxmsglength4 Mb
What is the attribute used to see the Message length?
Ans: MaxMsgLength
What is MQ Client?
Ans: A Web Sphere MQ client is a component that allows an application running on a system to issue
MQI calls to a queue manager running on another system. The output from the call is sent back to the
client, which passes it back to the application.
What is MQ Server?
Ans: A Web Sphere MQ server is a queue manager that provides queuing services to one or more
clients. All the Web Sphere MQ objects, for example queues, exist only on the queue manager machine
(the Web Sphere MQ server machine), and not on the client. A Web Sphere MQ server can also support
local Web Sphere MQ
Applications
What are the Objects used in Web sphere MQ?
Ans: 1. Queue Manager 2. Queues
3. Channels 4. Processes 5. Name lists.
Mention the No of Characters required for creating names of the MQ objects?
Ans: For MQ Channels it is 20 Characters
For Remaining objects it is 48 characters.
What about is the Default port number for MQ Queue Manager?
Ans: 1414
Difference between MQSC commands and Control commands?
MQSC Commands These commands are used to handle the admin related functions for the
components that are present in the MQ Series. In general MQSC commands are used for creating and
maintaining Message channels, Queue Managers, Clusters etc
Control Commands These commands are used to manage the processes and services that are helpful
in the functioning of the MQ Series. In general these commands are used for Channel listener, Channel
Initiator, Trigger monitor etc
Is the MQSC attributes are Case sensitive?
Ans: MQSC commands, including their attributes, can be written in uppercase or lowercase. Object
names in MQSC commands are folded to uppercase (that is, QUEUE and queue are not differentiated),
unless the names are enclosed within single quotation marks. If quotation marks are not used, the object
is processed with a name in uppercase.
SCRIPT COMMANDS:After entering in to queue manager we can find script commands.
Script commands are same for every queue manager.
(These Commands should be used in CAPITAL LETTERS)
DEFINE :-To define/create MQ manager objects like queue,
Here -q used to define the Queue manager QM1 as a Default Queue manager
-d is used to define the default transmission Queue -u is used to define the default dead letter queue.
How can U make the existing Queue Manager as an default Queue Manager?
Ans: On Windows systems, use the Web Sphere MQ Services snap-in to display the properties of the
queue manager, and check the Make queue manager the default box. You need to stop and restart the
queue manager for the change to take effect.
Where are the backup files are present after creating the Queue Manager?
Ans: Windows systems: If you use Web Sphere MQ for Windows NT and Windows 2000,
configuration information is stored in the Windows Registry.
UNIX Systems: 1. When you install the product, the Web Sphere MQ configuration file (mqs.ini) is
created. It contains a list of queue managers that is updated each time you create or delete a queue
manager. There is one mqs.ini file per node.
2. When you create a new queue manager, a new queue manager configuration file (qm.ini) is
automatically created. This contains configuration parameters for the queue manager.
What is the command used for starting the Queue Manager?
Ans: strmqm QMName
What is the command used for stopping the Queue manager?
Ans: endmqm -w QMName
The command waits until all applications have stopped and the queue manager has ended.
endmqm i QMName
This type of shutdown does not wait for applications to disconnect from the queue manager.
Whats the message code for Stopping a Queue Manager?
AMQ4044 Queue manager stopping
What is the command used to delete the QueueManager?
Ans: dltmqm QMName
Display the attributes of the Queue Manager QM1?
Ans: runmqsc QM1 Display qmgr
IBM Websphere MQ interview Questions Part 2
What is Queue?
Ans: A queue is a data structure used to store messages. A queue manager owns each queue. The queue
manager is responsible for maintaining the queues it owns, and for storing all the messages it receives
onto the appropriate queues
What is the Default max Queue depth?
Ans 5000
Types of Queues?
Local Queue Remote Queues Alias Queues
Model Queue Dynamic Queues Cluster Queues.
Queue: A safe place to store messages for Prior-To-Delivery, it belongs to the Qmgr to which the
application is connected.
Model Queue: Model queue is a template of a queue definition that uses when creating a dynamic
queue.
Alias Queue: Queue definition, which is Alias to an actual Local or Remote Q. Used for security and
easy maintenance.
Remote Queue: Object that defines a Queue belongs to another Q Manager (Logical Def).
Initiation Queue: An initiation queue is a local queue to which the queue manager writes a trigger
message when certain conditions are met on another local queue
Dynamic Queue: Such a queue is defined on the fly when the application needs it. Dynamic queues
may be retained by the queue manager or automatically deleted when the application program ends.
Use- To store intermediate results.
Cluster Queue: Custer queue is a local queue that is known throughout a cluster of queue managers.
Reply-To-Queue: A request message must contain the name of the queue into which the responding
program must put the Reply Message.
Queue Manager: Provides Messaging services and manages the Queues, Channels, and Processes that
belongs to it.
Alias Q Manager: Queue-manager aliases, are created using a remote-queue definition with a blank
RNAME.
What are the attributes required for the Remote Queue Definition?
Ans: 1.Name of the Queue 2. Transmission Queue Name.
Predefined queues are permanent; they exist independently of the applications that use them and
survive Web Sphere MQ restarts.
2 Dynamic queues are created when an application issues an MQOPEN request specifying the name of
a model queue. The queue created is based on a template queue definition, which is called a model
queue.
What is the Algorithm followed in retrieving the Messages from the Queue?
Ans: 1.First-in-first-out (FIFO).
2.Message priority, as defined in the message descriptor. Messages that have the same priority are
retrieved on a FIFO basis.
3. A program request for a specific message.
What is Process Definition and what are the attributes does it contain?
Ans: A process definition object defines an application that starts in response to a trigger event on a
WebSphere MQ queue manager. The process definition attributes include the application ID, the
application type, and data specific to the application.
What is intercommunication and its components to send message ?
What is Intercommunication?
Ans: In Web Sphere MQ, intercommunication means sending messages from one Queue manager to
another. The receiving queue manager could be on the same machine or another; nearby or on the other
side of the world. It could be running on the same platform as the local queue manager, or could be on
any of the platforms supported by Web Sphere MQ. This is called a distributed environment.
Message channels Message channel agents
Transmission queues Channel initiators and listeners
Channel-exit programs
What is Distributed Queue Management (DQM).
Web Sphere MQ handles communication in a distributed environment such as this using DQM.The
local queue manager is sometimes called the source queue manager and the remote queue manager is
sometimes called the target queue manager or the partner queue manager.
What is the Objects required for the DQM?
Ans: On source QueueManager:
1. Transmission Queue 2. Remote queue definition.
3. Dead Letter Queue(recommended) 4. Sender Channel
1. Inactive 3.Retrying
2. Running 4.Stopped
What about Initializing & Binding states?
Ans: Before running state first the channel will initializes the listener & Binds with the Receiver
Channel then it goes into running mode.
Tell me Some Channel Attributes?
Batch Heartbeat Interval (BATCHHB): This heartbeat interval allows a sending channel to verify that
the receiving channel is still active just before committing a batch of messages. If the receiving channel
is not active, the batch can be backed out rather than becoming in-doubt, Batch interval (BATCHINT),
Batch size (BATCHSZ), Channel type (CHLTYPE), Cluster (CLUSTER), Cluster namelist (CLUSNL),
Connection name (CONNAME), Convert message (CONVERT), Disconnect interval (DISCINT),
Heartbeat interval (HBINT), KeepAlive Interval (KAINT), Long retry count (LONGRTY), Long retry
interval (LONGTMR), Maximum message length (MAXMSGL)
Why is Channel RETRYINT attribute used?
If a message is places in DLQ because of put inhibited or queue full condition, the DLQ handler
attempts to put the message back to the destination queue. This interval is called as RETRYINT by
default the retry interval is 60 seconds.
Receiver Cluster Receiver Requester
What is channel disconnect interval?
This is a time-out attribute, specified in seconds, for the server, cluster-sender, and cluster-receiver
channels. The interval is measured from the point at which a batch ends, that is when the batch size is
reached or when the batch interval expires and the transmission queue becomes empty. If no messages
arrive on the transmission queue during the specified time interval, the channel closes down
Explain the channel attribute BATCHSIZE?
BATCHSIZE denotes the maximum number of messages that can be sent through a channel before
taking a checkpoint. This parameter is valid only for channels with a channel type (CHLTYPE) of
SDR, SVR, RCVR, RQSTR, CLUSSDR, or CLUSRCVR. The value must be in the range 1 through
9999.
What is BATCH HEARTBEAT INTERVAL?
Ans: The batch heartbeat interval allows a sending channel to verify that the receiving channel is still
active just before committing a batch of messages, so that if the receiving channel is not active, the
batch can be backed out rather than becoming in-doubt, as would otherwise be the case. By backing out
the batch, the
messages remain available for processing so they could, for example, be redirected to another channel.
What is Keep Alive Interval?
Ans: The Keep Alive Interval parameter is used to specify a time-out value for a channel. The Keep
Alive Interval parameter is a value passed to the communications stack specifying the Keep Alive
timing for the channel. It allows you to specify a different keep alive value for each channel. The value
indicates a time, in seconds, and must be in the range 0 to 99999.
What is LONG Retry count?
Ans: Specify the maximum number of times that the channel is to try allocating a session to its partner.
If the initial allocation attempt fails, the short retry count number is decremented and the channel
retries the remaining number of times.
What are the ways to start a channel?
Use the MQSC command START CHANNEL
Use the control command runmqchl to start the channel as a process
Use the channel initiator to trigger the channel
Type of channel states:
Inactive and Current- Stopped, Starting, Retrying and Active
What are the three options for stopping channels?
QUIESCE FORCE TERMINATE
What are the components of message channel?
A queue manager to communicate with another queue manager uses message channel. The components
of a message channel are
1. Sender Message channel agent: Sender MCA is a program that transfers messages from a
transmission queue to a communication link
2. Receiver MCA: It transfers messages from the communication link into the target queue
3. Communication protocol: Responsible for transferring messages A message channel is
unidirectional.
What is Message Channel agent (MCA)?
Ans: A message channel agent (MCA) is a program that controls the sending and receiving of
messages. There is one message channel agent at each end of a channel. One MCA takes messages
from the transmission queue and puts them on the communication link. The other MCA receives
messages and delivers them onto a queue on the remote queue manager.
A message channel agent is called a caller MCA if it initiated the communication; otherwise it is called
a responder MCA.
What is Channel initiator and Listeners?
Ans: A channel initiator acts as a trigger monitor for sender channels, because a transmission queue
may be defined as a triggered queue. When a message arrives on a transmission queue that satisfies the
triggering criteria for that queue, a message is sent to the initiation queue, triggering the channel
initiator to start the
appropriate sender channel. You can also start server channels in this way if you specified the
connection name of the partner in the channel definition. This means that channels can be started
automatically, based upon messages arriving on the appropriate transmission queue.
You need a listener program to start receiving (responder) MCAs. Responder MCAs are started in
response to a startup request from the caller MCA; the channel listener detects incoming network
requests and starts the associated channel.
Channel Errors?
Due to: 1. Xmitq is set to get disabled 2. Network Issues
3.QueueManager Stopped 4. Listener is not running 5.TriggerTurned Off
Explain Channel-Exit programs and what are the types?
Channel-exit programs are called at defined places in the processing carried out by MCA programs
Security Exit: You can use security exit programs to verify that the partner at the other end of a channel
is genuine
Message Exit: Message Exit can be used for Encryption on the link, message data conversion,
validation of user ID,
Message-retry Exit: Message-retry exit is called when an attempt to open the target queue is
unsuccessful
Sender and receiver Exit: You can use the send and receive exits to perform tasks such as data
compression and decompression
Channel auto-definition Exit Transport-retry Exit
What is the Different Logging Methods available?
Ans: There are two different types available
1. Circular: The circular logging is used for restart recovery. It is the default logging method. Circular
is used in Development and Testing Queues. Circular logging keeps all restart Data in a ring of log
files. Logging fills the first file in the ring, then moves on to the and so on, until all the files are full. It
then goes back to the first file in the ring and starts This continues as long as the product is in use, and
has the advantage that you never run out of log files.
2. Linear: Linear logging gives you both restart recovery and media recovery. It is used in Production.
Linear logging keeps the log data in a continuous Sequence of files. Space is not reused, so you can
always retrieve any record logged from the time that the queue manager was created. As disk space is
finite, you might have to think about some form of archiving. It is an administrative task to manage
your disk space for the log, reusing Or extending the existing space as necessary.
What is the Default location where the logs are stored and mention the default sizes?
Ans: Default location:
Windows: C:\Program Files\IBM\WebSphere MQ\log\qmgr
UNIX: /var/mqm/log
What is the log file size?
Ans: In Web Sphere MQ for Windows NT and Win 2000, the minimum value is 32, and the maximum
is 16 384. The default value is 256, giving a default log size of 1 MB.
In Web Sphere MQ for UNIX systems, the minimum value is 64, and the maximum is 16 384. The
default value is 1024, giving a default log size of 4 MB.
How will you change the log file size?
Ans ; You cannot change the log file size. For this you need to drop and re-create the queue manager.
The number of log files primary & secondary can be changed but you need to restart the Q manager for
the changes to take effect.
what is the number for log primary and secondary file allocated?
Ans: Primary log files: The number of primary log files to be allocated is 3 by default the minimum is 2
and MAX in Win 253 / Unix 510
Secondary log files: The number of secondary log files to be allocated is 2 by default the minimum is 1
and MAX in Win 252 / Unix 509
What is the command used for creating the listener?
Ans: crtmqlsr -t tcp -m QMNAME -p portno
What is the commands used for running listener in 5.3 Version?
Ans: runmqlsr -t tcp -m QMNAME -p portno
What is command used to perform task on the MQ services?
Ans: amqmdain
What are commands used on the Command server?
Ans: 1.strmqcsv: to start the command server
dspmqaut ------ to display set of all the permission for the user on the object
Will you give permission only for USER or GROUP, if GROUP why?
We can assign permissions to user and if you want assign permissions to group also.if asign
permissions to group that are assign all the user who are under that group.
Difference between Receiver & Requester channel?
requester and reciver are same except that the reuqesters can starts the sender from requester side.
Why do we go clustering?
we have so many advantages using cluster
1.administration task will be redused
2.work load balancing
3.increase resource utilization
4.high availability
Components of the cluster?
Clussend and clusrcvr channels
SYSTEM.CLUSTER.REPOSITORY.QUEUE
SYSTEM.CLUSTER.COMMAND.QUEUE
SYSTEM.CLUSTER.TANSMISSION.QUEUE (Please do not disable the put or get attribute on
cluster)
Which types of Logs are using in your Organization?
Depending upon client requirement we are using both linear and circular loggings
How you check the Status of the Queue?
dis qs(qname) type(handle)
Default path of the Error logs & Transaction Logs?
In windows:\Program files\IBM/Web spear MQ\Log\ Qmgrs\active
C:\Program file\IBM\Web spear MQ\Qmgrs\QMname\Errors
In Unix:/var/mqm/log/Qmgrs/active
/var/mqm/Qmgrs/Qmname/errors
What is the use of PROBID in Fdc?
Using ProbID: we can find the solution in IBM info center, If before anybody face that problem,
otherwise we will rise PMR(problem management report) and it will contains Application name, major
error, minor error and so on..
Difference stopping status of QMGRs?
End immediately, End abnormally, ended normally
How do you enable the Trigger?
we need to set some properties on queues
Trigger on
Trigtype (First/every/depth)
Trigdepth
Trigdata(chalname)
initq()
Which types of tickets do you mostly resolved?
instant tickets
How to Suspend a Qmgr from the cluster?
Suspend qmgr cluster (clusname)
How to add existing Qmgr into the cluster?
If you add it as full repository, you need to add repos keyword to Qm, and create one clussdr and
clusrcvr channels, add cluster attributes to other objects
If you want to add it as partial repository, create clusrcvr channel to that QM and a clussdr to a queue
manager in full repository and set cluster attribute to objects
What is the use of alias queue?
This queue is act as reference queue to local, remote and cluster queues.
the advantage of alias queue is
1. Hide the details of reference queue to clients.
2. used for follow the naming conventions,
3. Provide different levels of access.
Why do we give Conname at Receiver Channel side in Cluster?
In cluster sdr channels are auto generated, based on the receiver channel attributes only the sdr channel
will generated
How can you install all the Packages in Linux at a time?
rpm -ivh name of the packages with spaces
Tell me the process of installation on Windows and Linux?
on linux
df -k df -h to check the disk space
rpm (redhat package manager)
Create mqm userid and make mqm as its primary group.
the installation directory for mqm are opt/mqm
the working data is stored in var/mqm
./mqlicense.sh -accept --- to accept the license
then run the commands to install all the packages required. rpm -ivh packagename
rpm -ivh ( i- install v- verbose h- hash format)
to check the packages installed rpm -qa ! grep mq
ps -ef ! grep mq to end all the processes.
Difference between V5, V6 & V7?
Differences between persistent and non persistent messages?
1. Persistent msgs are important, at any cost those must be deliver to destination QM,if any problem
occur Those are placed in Xmitq or in DLQ.
2. Nonpersistent msgs are not important; if any problem occurs those are discarded.
Types of tickets?
1. Instant tickets
2. Change order tickets
How many Qmgrs are in your current project?
Nearly 400.
How do you convert linear to circular?
we dont have that type of operation if you want to change,
1. First stop the channels
2. Stop the Qmgr
3. Take the back up of qmanager using save queue manager
4. Delete the Qmgr
5. Recreate it with linear logging
6. Recreate all the queue definitions and give the permission to the queues
How many applications connect to your current project?
Display conn(*)
Reason codes for 2033, 2053, 2085, 2035, 2537
2033: Msg not available
2053: Q full
2085: unknown obj name
no
Which flavor you are using on Linux?
Red hat
Differences between MQI and MSG Channels?
MQI channels are used between MQ client and MQ sever, those are bi-directional
Types: server connection channel
Client connection channel
MSG channels are uni-directional, and used between QM
1. Sender
2. Receiver
3. Cluster sender
4.cluster rceiver
5.server
6. Client
7.requster
Default objects in Cluster?
SYSTEM.CLUSTER.REPOSITORY.QUEUE
SYSTEM.CLUSTER.COMMAND.QUEUE
SYSTEM.CLUSTER.TRANSMISSION.QUEUE
Queues and channels.
Difference between Dead-Letter Header and Handler?
if msga are come to DLQ, QM will add dead letter header to msg,it contains reason for failure,
destination queue and QM details such type of infon
using dead letter handler you pick the msgs from DLQ placed it in destination queue
What is sync point?
This is nothing but unit of work in two phase commit
Tell me something about unit of work?
the period of updates between two sync points is called unit of work.
Can you change the log file size?
No.
Where the latest information stores in error logs and why?
In the first file.
Can you increase the no. of error logs?
no
What is the command to check the disk space on Linux?
df -k df -h
Which command we use to check the installed packages on Linux?
rpm -qa | grep mq
Command to kill the process on Linux?
$ ps ux ----------to list all the processes.
$ kill -9 Pid -------------to kill particular process...
Do you run the runmqdlq program every time?
Depending upon the messages those are coming to the DLQ.
How can you check the listener port is running from your desktop?
NETSTAT -a
What is the use of telnet, ping and tracert?
ping is used to check the status of remote channel.
telnet is used for remote access of another system.
it shows path taken to reach a particular destination over a network.