NexJ Logo

Editing settings for an object queue

You can edit concurrency settings for an object queue and change whether the queue can send and receive messages.

If you change queue concurrency settings, ensure that you do not adversely affect other queues and the Object Queue engine. For example, consider factors such as the priority of the queue, expected load on the queue, and the maximum receivers setting for the Object Queue engine.

NexJ CRM supports per-node concurrency for object queues that allows concurrency to be a factor of the number of server nodes. This means that the concurrency value can grow as the number of nodes increases, rather than you having to manually increase the value as more nodes are added. A new boolean property named "global" has been added to object queue channels that determines how the queue concurrency configuration is interpreted. For example, if a queue’s configured concurrency is 8 and global is set to false, the run-time concurrency for the queue on a 4-node cluster is 32. Generally, a queue should be configured as per-node, unless concurrency has a hard limit (for example, an external service to which the messages connect can only accept a fixed number of connections from NexJ CRM).

The global property of existing object queues will be set to true to maintain current behavior. In newly created object queues, it will default to false and can be explicitly set to true by updating the channel metadata.

Once the queues have been created, subsequent changes to the global property can be made through database update scripts against the OQObjectQueue table, which is in the ObjectQueueDatabase data source.

To edit settings for an object queue:

  1. In NexJ System Admin Console, navigate to the Object Queues page.
  2. Select an object queue from the Object Queues list.
  3. In the details zone, select the Detail tab.
  4. Click EditThe Object Queue properties dialog opens.
  5. Make any of the following changes:
    1. In the Concurrency field, enter a new value to define the maximum number of messages that can be in Processing state at the same time. A value of 0 indicates unlimited concurrency.
    2. Select Send Enabled to allow the object queue to send messages.
    3. Select Receive Enabled to allow the object queue to receive messages.
  6. Click OKThe Object Queue properties dialog closes.

You have updated settings for an object queue.