You are viewing the documentation for Blueriq 16. Documentation for other versions is available in our documentation directory.

The DCM Lists Service manages the data to display in a case, task, or work list. This data is a copy of the data that is used and manipulated by the process engine in the Process SQL store component. The reason that this data is duplicated is that to display a list, complex and intensive queries need to be executed. These queries can now be serviced by the DCM Lists service, while the process engine can focus on manipulating process data, without also having to perform intensive list queries.

Installation

The DCM Lists Service is a standalone application. The corresponding WAR file can be found in the release zip or in Artifactory: https://artifactory.blueriq.com/ui/native/libs-release-R15/com/blueriq/blueriq-dcm-lists-application/. The WAR file needs to be deployed to a supported application server, see Installing Runtime. The application requires a config location to specify the configuration outlined below. Note that the Blueriq DCM Development Installation includes the DCM Lists Service including configuration.

System requirements

Minimal

2 CPU cores
256 MB Heap

2 CPU cores
512 MB Heap

Third party tools

RabbitMQ

The DCM Lists Service receives events from the Blueriq Runtime application via the RabbitMQ Messaging system (see DCM queueing). The DCM Lists Service should be able to connect to the RabbitMQ instance.

MongoDB

The DCM Lists Service stores its data in MongoDB (see Document database MongoDB). The DCM Lists Service should be able to read and write data into a MongoDB instance.


Ideally, both tools run on their own dedicated server, with sufficient resources. We refer to the websites of MongoDB and RabbitMQ for advice on hardware requirements for these components.

Configuration

The DCM Lists Service requires a blueriq-dcm-lists.yml  file in the spring.config.additional-location you configured for it. Here, you can specify the location of RabbitMQ, MongoDB and configure some additional settings:

blueriq-dcm-lists.yml
spring:
  data:
    mongodb:
      host: mongodb.yourdomain.local
      port: 27017
      database: DcmListsService
      username: youruser
      password: yourpass
  security:  # Security configuration for the dcm list service. Here you can override the default username/password 
    user:
      name: <username>
      password: '{noop}<password>'

blueriq:
  default:
    rabbitmq:
      host: rabbitmq.yourdomain.local
      port: 5672
      virtualHost: /
      username: youruser
      password: yourpass
      ssl:
        enabled: false
	  # From blueriq version 16.9 it is possible to declare multiple hosts (RabbitMQ Cluster)
      addresses: localhost:30012,otherhost:25102   
  dcm:
    lists:
      event:
        consumer:
          rabbitmq: # can be used to override queue configuration from blueriq.default.rabbitmq setting and default queueNames
            queueNames: dcmListsServiceEventsQueue
            errorExchange: dlx.dcmListsServiceEvents
          concurrency:
            max-concurrent-consumers: 1
            concurrent-consumers: 1
For more information on concurrent consumers see Configuring RabbitMQ.

Multi-tenancy

DCM-Lists can be used in a multi-tenant environment. For more information, check Multi-tenancy for the DCM Lists Service.