Skip to content

Commit

Permalink
Make number of JMS Consumers configurable by System Properties dcm4ch…
Browse files Browse the repository at this point in the history
  • Loading branch information
gunterze committed Apr 23, 2018
1 parent ed6f630 commit 7f73217
Show file tree
Hide file tree
Showing 3 changed files with 112 additions and 4 deletions.
15 changes: 15 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,21 @@ ENV LDAP_HOST=ldap \
RS_CLIENT_ID=dcm4chee-arc-rs \
WILDFLY_EXECUTER_MAX_THREADS=100 \
WILDFLY_PACSDS_MAX_POOL_SIZE=50 \
WILDFLY_MDB_STRICT_MAX_POOL_DERIVE_SIZE=from-cpu-count \
WILDFLY_MDB_STRICT_MAX_POOL_SIZE=20 \
WILDFLY_JMS_QUEUE_STGCMTSCP_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_STGCMTSCU_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_MPPSSCU_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_IANSCU_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_EXPORT1_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_EXPORT2_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_EXPORT3_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_EXPORT4_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_EXPORT5_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_HL7SEND_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_RSCLIENT_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_CMOVESCU_CONSUMER_COUNT=1 \
WILDFLY_JMS_QUEUE_DIFFTASKS_CONSUMER_COUNT=1 \
SYSLOG_HOST=logstash \
GELF_FACILITY=dcm4chee-arc \
GELF_LEVEL=WARN
Expand Down
86 changes: 83 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,15 +164,95 @@ for securing archive's RESTful services. Default value set is `dcm4chee-arc-rs`.
#### `WILDFLY_EXECUTER_MAX_THREADS`

This environment variable sets the maximum threads allowed for the managed-executor-service in the Wildfly configuration.
Default value set is `100`.
Default value is `100`.

#### `WILDFLY_PACSDS_MAX_POOL_SIZE`

This environment variable sets the maximum pool size allowed for the PacsDS datasource in the Wildfly configuration. Default value set is `50`.
This environment variable sets the maximum pool size allowed for the PacsDS datasource in the Wildfly configuration.
Default value is `50`.

#### `WILDFLY_MDB_STRICT_MAX_POOL_DERIVE_SIZE`

Specifies if and what the max pool size for message driven beans should be derived from. A value of `none` indicates
that the explicit value of max-pool-size should be used. A value of `from-worker-pools` indicates that the max pool
size should be derived from the size of the total threads for all worker pools configured on the system.
A value of `from-cpu-count` indicates that the max pool size should be derived from the total number of processors
available on the system. Default value is `from-cpu-count`.

#### `WILDFLY_MDB_STRICT_MAX_POOL_SIZE`

Configured maximum number of message driven bean instances that the pool can hold at a given point in time. Only
effective if `WILDFLY_MDB_STRICT_MAX_POOL_DERIVE_SIZE=none`. Default value is `20`.

#### `WILDFLY_JMS_QUEUE_STGCMTSCP_CONSUMER_COUNT`

The number of consumers consuming messages from queue `StgCmtSCP`. Limits number of concurrently processed Storage
Commitment requests. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_STGCMTSCU_CONSUMER_COUNT`

The number of consumers consuming messages from queue `StgCmtSCU`. Limits number of concurrently invoked Storage
Commitment requests. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_MPPSSCU_CONSUMER_COUNT`

The number of consumers consuming messages from queue `MPPSSCU`. Limits number of concurrently forwarded MPPS messages.
Default value is `1`.

#### `WILDFLY_JMS_QUEUE_IANSCU_CONSUMER_COUNT`

The number of consumers consuming messages from queue `IANSCU`. Limits number of concurrently sent IAN notifications.
Default value is `1`.

#### `WILDFLY_JMS_QUEUE_EXPORT1_CONSUMER_COUNT`

The number of consumers consuming messages from queue `Export1`. Limits number of concurrently processed Export Tasks
from `Export1` queue. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_EXPORT2_CONSUMER_COUNT`

The number of consumers consuming messages from queue `Export2`. Limits number of concurrently processed Export Tasks
from `Export2` queue. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_EXPORT3_CONSUMER_COUNT`

The number of consumers consuming messages from queue `Export3`. Limits number of concurrently processed Export Tasks
from `Export3` queue. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_EXPORT4_CONSUMER_COUNT`

The number of consumers consuming messages from queue `Export4`. Limits number of concurrently processed Export Tasks
from `Export4` queue. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_EXPORT5_CONSUMER_COUNT`

The number of consumers consuming messages from queue `Export5`. Limits number of concurrently processed Export Tasks
from `Export5` queue. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_HL7SEND_CONSUMER_COUNT`

The number of consumers consuming messages from queue `HL7Send`. Limits number of concurrently sent HL7v2 messages.
Default value is `1`.

#### `WILDFLY_JMS_QUEUE_RSCLIENT_CONSUMER_COUNT`

The number of consumers consuming messages from queue `RSClient`. Limits number of concurrently forwarded RESTful
requests. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_CMOVESCU_CONSUMER_COUNT`

The number of consumers consuming messages from queue `CMoveSCU`. Limits number of concurrently invoked retrieve
requests. Default value is `1`.

#### `WILDFLY_JMS_QUEUE_DIFFTASKS_CONSUMER_COUNT`

The number of consumers consuming messages from queue `DiffTasks`. Limits number of concurrently processed Studies
Compare Tasks. Default value is `1`.

#### `SYSLOG_HOST`

Specifies host name to which Wildfly Gelf Logger This environment variable is the host name of logstash container used in wildfly configuration. Default value is `logstash`.
Specifies host name to which Wildfly Gelf Logger This environment variable is the host name of logstash container used
in Wildfly configuration. Default value is `logstash`.

#### `GELF_EXTRACT_STACK_TRACE`

Expand Down
15 changes: 14 additions & 1 deletion configuration/dcm4chee-arc.xml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,19 @@
<property name="jboss.http.port" value="${env.HTTP_PORT}"/>
<property name="jboss.https.port" value="${env.HTTPS_PORT}"/>
<property name="jboss.management.http.port" value="${env.MANAGEMENT_HTTP_PORT}"/>
<property name="jms.queue.StgCmtSCP.consumer-count" value="${env.WILDFLY_JMS_QUEUE_STGCMTSCP_CONSUMER_COUNT}"/>
<property name="jms.queue.StgCmtSCU.consumer-count" value="${env.WILDFLY_JMS_QUEUE_STGCMTSCU_CONSUMER_COUNT}"/>
<property name="jms.queue.MPPSSCU.consumer-count" value="${env.WILDFLY_JMS_QUEUE_MPPSSCU_CONSUMER_COUNT}"/>
<property name="jms.queue.IANSCU.consumer-count" value="${env.WILDFLY_JMS_QUEUE_IANSCU_CONSUMER_COUNT}"/>
<property name="jms.queue.Export1.consumer-count" value="${env.WILDFLY_JMS_QUEUE_EXPORT1_CONSUMER_COUNT}"/>
<property name="jms.queue.Export2.consumer-count" value="${env.WILDFLY_JMS_QUEUE_EXPORT2_CONSUMER_COUNT}"/>
<property name="jms.queue.Export3.consumer-count" value="${env.WILDFLY_JMS_QUEUE_EXPORT3_CONSUMER_COUNT}"/>
<property name="jms.queue.Export4.consumer-count" value="${env.WILDFLY_JMS_QUEUE_EXPORT4_CONSUMER_COUNT}"/>
<property name="jms.queue.Export5.consumer-count" value="${env.WILDFLY_JMS_QUEUE_EXPORT5_CONSUMER_COUNT}"/>
<property name="jms.queue.HL7Send.consumer-count" value="${env.WILDFLY_JMS_QUEUE_HL7SEND_CONSUMER_COUNT}"/>
<property name="jms.queue.RSClient.consumer-count" value="${env.WILDFLY_JMS_QUEUE_RSCLIENT_CONSUMER_COUNT}"/>
<property name="jms.queue.CMoveSCU.consumer-count" value="${env.WILDFLY_JMS_QUEUE_CMOVESCU_CONSUMER_COUNT}"/>
<property name="jms.queue.DiffTasks.consumer-count" value="${env.WILDFLY_JMS_QUEUE_DIFFTASKS_CONSUMER_COUNT}"/>
</system-properties>

<management>
Expand Down Expand Up @@ -266,7 +279,7 @@
<pools>
<bean-instance-pools>
<strict-max-pool name="slsb-strict-max-pool" derive-size="from-worker-pools" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
<strict-max-pool name="mdb-strict-max-pool" derive-size="from-cpu-count" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
<strict-max-pool name="mdb-strict-max-pool" derive-size="${env.WILDFLY_MDB_STRICT_MAX_POOL_DERIVE_SIZE}" max-pool-size="${env.WILDFLY_MDB_STRICT_MAX_POOL_SIZE}" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
</bean-instance-pools>
</pools>
<caches>
Expand Down

0 comments on commit 7f73217

Please sign in to comment.