resumes@qualibrisk.com
post resume for the JOB
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,
Windows 2003 SE, Windows 2003EE.
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.
Connectivity The network protocols supported by WebSphere MQ for AIX,
V5.3 are:
1. TCP/IP
2. SNA LU 6.2.
3. LU 6.2
4. NetBIOS
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 is a Message and what does it contain?
Ans: A message is a string of bytes that is meaningful to the applications
that use it. Messages are used to transfer information from one application
program to another (or between different parts of the same application). The
applications can be running on the same platform, or on different platforms.
WebSphere MQ messages have two parts:
1. The application data. The content and structure of the application data
is defined by the application programs that use it.
2. A message descriptor. The message descriptor identifies the message
and contains additional control information, such as the type of message and
the priority assigned to the message by the sending application. WebSphere
MQ defines the format of the message descriptor. For a complete description
of the message descriptor,
What is the Max Length of the message does MQ support/
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
--------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
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.
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
Difference between Control Commands used in Windows and other Os?
Control commands on are case sensitive other OS but Windows they can be
used any way.
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.
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 happens if DEAD letter Queue is not defined?
If dead letter queue are not defined the Messages are placed on the
Transmission Queue and the Queue Manager become Inactive
Explain Remote queue definitions? Advantages?
These are definitions for queues that are owned by another queue manager
Advantages: The advantage of remote queue definitions is that they enable
an application to put a message to a remote queue without having to specify
the name of the remote queue or the remote queue manager, or the name
of the transmission queue. This gives you location independence.
What happens if channel terminates when fast non-persistent messages are in
transit?
If a channel terminates while fast, non-persistent messages are in transit,
the messages are lost and it is up to the application to arrange for their
recovery if required. If the receiving channel cannot put the message to its
destination queue then it is placed on the dead letter queue, if one has been
defined. If not, the message is discarded.
What happens when a message cannot be delivered?
Message-retry: If the MCA is unable to put a message to the target queue
for a reason that could be transitory (for example, because the queue is
full), the MCA has the option to wait and retry the operation later
Return-to-sender: If message-retry was unsuccessful, or a different type of
error was encountered, the MCA can send the message back to the
originator
Dead-letter queue: If a message cannot be delivered or returned, it is put on
to the dead-letter queue (DLQ). You can use the DLQ handler to process the
message
Recovery scenario –Disk Drive Full, damaged Queue manager object,
Damaged single object, Automatic media recovery failure
MQ ensures that messages are not lost by maintaining records (logs) of the
activities of the queue managers that handle the receipt, transmission, and
delivery of messages
How to Process Messages from the Dead-letter-Queue?
We can Process the DLQ messages using runmqdlq command for sending
messages to the destination Queues or target Queues. Use the runmqdlq
command to start the dead-letter queue (DLQ) handler, which monitors and
handles messages on a dead-letter queue.
runmqdlq QName QMgrName
Use the Dead-Letter-Queue-Handler to perform various actions on selected
messages by specifying a set of rules that can both select a message and
define the action to be performed on that message.
The runmqdlq command takes its input from stdin. When the command is
processed, the results and a summary are put into a report that is sent to
stdout.
Which field of the MQDLH structure contains a reason code that identifies why the
message is on the DLQ?
Reason field
What is completion code(MQCC) and reason code(MQRC)?
Completion code gives the status of the current transaction it can be 0, 1, 2.
0- for Successful completion (MQCC_OK), 1- Warning (MQCC_WARNING), 2-
call failed (MQCC_FAILED).
Reason code is that which gives the reason for which the transaction
fails it can be MQRC_NONE, MQRC_BACKED_OUT etc.
What is Correl ID?
This is a byte string that the application can use to relate one message to
another, or to relate 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
What are name services?
The name service is an installable service that provides support to the queue
manager for looking up the name of the queue manager that owns a
specified queue.
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
How will we start a command server?
Depending on the value of the queue manager attribute, SCMDSERV, the
command server is either started automatically when the queue manager
starts, or must be started manually.
Start: Using strmqcsv saturn.queue.manager where saturn.queue.manager
is the QM name
Display: dspmqcsv 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 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.
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
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 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
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:
Restart recovery: When you stop WebSphere MQ in a planned way.
Crash recovery: When a failure stops WebSphere MQ.
Media recovery: To restore damaged objects.
What are the locations and files of the Error Logging?
MQ Series Level Errors
C:\ProgramFiles\IBM\WebSphere MQ\errors AMQERR01.LOG,
AMQERR02.LOG, AMQERR03.LOG
Qmanager Level errors
C:\ProgramFiles\IBM\WebSphere MQ\Qmgrs\errors AMQERR01.LOG,
AMQERR02.LOG, AMQERR03.LOG
\errors
What are the different types of security services available in MQ Series?
Identification & Authentication
Access control The access control service protects critical resources in a
system by limiting access only to authorized users and their applications.
Confidentiality The confidentiality service protects sensitive information
from unauthorized disclosure
Data integrity The data integrity service detects whether there has been
unauthorized modification of data. There are two ways in which data might
be altered: accidentally, through hardware and transmission errors, or
because of a deliberate attack, Non-repudiation.