Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

DCM 2.0 consists of multiple components that are linked to the Blueriq Runtime. Because these components are separated from each other, they need a way to communicate with each other. To do that, aside from using HTTP protocol, the AMQP (Advanced Message Queueing Protocol) is used. This technology enables multiple components to send messages to each other via multiple so-called queues. Queues are essential components for the new DCM architecture.

One of the advantages of messaging is that communication is asynchronous. This means that when a message has been send, the producing component does not have to wait for an answer and could continue doing other tasks. The receiving component does not need to be running to be able to produce a message. When a message has been delivered to the exchange, it will be placed in the bound queue and will be read when the receiving component is online. Also the order of receival is kept within the queue, and delivered in the same order to the receiving component.

For the DCM setup, we use several queues and exchanges. We use dead letter queues to store messages that could not be processed, because an error occurred when processing. The error should be visible in the log file. Messages on these dead letter queues will be automatically retried by the DCM Maintenance Application. If it exceeds the configured amount of retries it should be reviewed manually by a system administrator instead. There is no notification mechanism for dead letter messages, so Blueriq advises to check the dead letter queues periodically.

...