Dynamic Versus Administered Queues
Dynamic queues are queues that are created through the application source code using a vendor-specific API. Administered queues are queues that are defined in the JMS provider configuration files or administration tools.
The setup and configuration of dynamic queues tends to be vendor-specific. A queue may be used exclusively by one consumer or shared by multiple consumers. It may have a size limit (limiting the number of unconsumed messages held in the queue) with options for in-memory storage versus overflow to disk. In addition, a queue may be configured with a vendor-specific addressing syntax or special routing capabilities.
JMS does not attempt to define a set of APIs for all the possible options on a queue. It should be possible to set these options administratively, using the vendor-specific administration capabilities. Most vendors supply a command-line administration tool, a graphical administration tool, or an API for administering queues at runtime. Some vendors supply all three. Using vendor-specific administration APIs to create and configure a queue may be convenient at times. However, it is not very portable and may require that the application have administrator privileges.
JMS provides a QueueSession.createQueue(String queueName) method, but this is not intended to
define a new queue in the messaging system. It is intended to return a
Queue object that represents an existing queue. There is also a JMS-defined method for creating ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access