Neoview Database Administrator's Guide (R2.2)

Messages are removed automatically from the JMS Queue as they are read by the GEL JMS
Consumer (auto-acknowledge).
The GEL JMS Consumer terminates when one of these two events is triggered:
The Idle Time Limit is reached, the user-configurable time limit for the GEL JMS
Consumer to idle and wait for queue entries before terminating.
Message Count Limit is reached, the user-configurable limit for the number of queue
entries to be processed by the GEL JMS Consumer.
Table B-1 describes the key features of inbound JMS messages.
Table B-1 Characteristics of Inbound JMS Messages
DescriptionFeature
Asynchronous message transfer is used because JMS-based enterprise
messaging systems (for example, Sun Java One App Server, BEA,
and JBoss) implement a uniform API that guarantees every message
will be delivered to the consumer. The producer can throw many
messages into a JMS Queue, confident that even if it takes a long
time to parse and handle each message, each one will be passed off
to its consumer.
The Gelserver client application consumes
messages asynchronously.
PTP is based on named message queues, message producers and
message consumers. Each message is addressed to a specific queue,
and the queue retains the message until the message is consumed
or expires. PUB/SUB, the other possible domain, is suitable when a
publisher wants to broadcast messages to multiple subscribers. PTP
should support these capabilities in the data-loading environment:
Each message has only one consumer. The sender and receiver of a
message have no time dependencies. The receiver can fetch a
message whether or not it was running when the message was sent.
The receiver acknowledges (ACK) successful processing of the
message.
Message domain is point-to-point (PTP).
JMS can support many message formats, but if JMS messages are to
be consumed by a non-Java consumer such as the Gelserver client,
which is C++ based, the message format must be “text message”
type. The client application for the Gelserver on the Linux platform
uses text-based file/pipe reader functionality, which can be extended
for reading JMS messages in the text message format.
The message format is “text message” type.
Because the JMS message is consumed asynchronously, the real-time
load job runs continuously. The GEL JMS Consumer process
terminates in response to an Idle Time Limit or Message Count Limit
event.
The message consumer terminates in response
to an external event.
Security
The GelJmsConsumer Java program redirects stderror to its JMS log file. If Java security permission
is not granted, the logging operation fails. If that happens, the system administrator must change
the java.policy file located in the JAVA_HOME/jre/lib/security directory by adding
this line:
permission java.lang.RuntimePermission "setIO";
JMS Installation Considerations
For setting task termination events, JMS-related tasks terminate upon reaching the maximum
message count limit or reaching the JMS idletime limit, whichever occurs first. The JMS idletime
limit value must be set to less than the Gelserver timeout limit, which is 30 minutes by default.
144 JMS Info