Local queues require a message store to store their messages. Each queue
can specify what type of store to use, and where it is located. Use the queue
characteristic
Queue_FileDesc to
specify the type of message store and to provide parameters for it. The field
type is
ascii and the value must be a file descriptor of
the form:
adapter class:adapter parameters
or
adapter alias:adapter parameters
For example:
MsgLog:d:\QueueManager\ServerQM12\Queues
MQe Version 2.1 provides two adapters, one for writing messages to disk
and one for storing them in memory. By creating an appropriate adapter, messages
can be stored in any suitable place or medium (such as DB2® database or writable CDs).
The choice of adapter determines the persistence and resilience of messages.
For instance if a memory adapter is used then the messages are only as resilient
as the memory. Memory may be a much faster medium than disk but is highly
volatile compared to disk. Hence the choice of adapter is an important one.
If you do not provide message store information when creating a queue,
it defaults to the message store that was specified when the queue manager
was created.
Take the following into consideration when setting the
Queue_FileDesc field:
- Ensure that the correct syntax is used for the system that the queue resides
on. For instance, on a Windows® system use "\" as a
file separator. On UNIX® systems use "/" as a file separator. In
some cases it may be possible to use either but this is dependent on the support
provided by the JVM (Java™ Virtual Machine) that the queue manager
runs in. As well as file separator differences, some systems use drive letters
(like Windows
NT®) whereas others (like UNIX) do not.
- On some systems it is possible to specify relative directories ("
.\"), whilst on others it is not. Even on those where relative directories
can be specified, they should be used with great caution as the current directory
can be changed during the lifetime of the JVM. Such a change causes problems
when interacting with queues using relative directories.