Set up a Dimensions deployment server
You can perform Dimensions deployment operations asynchronously in the background. A Dimensions CM server component called the deployment server performs the asynchronous processing.
Deployment server overview
The following diagram illustrates the Dimensions CM business logic tier with the deployment server (dmdeploysrv.exe):
The pool manager starts the deployment server. The deployment server then reads the installdir/dfs/deploy_config.dat configuration file and begins to monitor the deployment job queues for any jobs that need to run in each base database.
As users run deployment-related commands, such as promote, demote, build, and audit, these commands submit new deployment jobs into the deployment job queue of the base database. A deployment job includes the following information:
-
The type of the operation to be performed, for example, deploy, rollback, build, audit, or clean.
-
The deployment areas where to run the deployment job.
-
Where appropriate, the set of Dimensions CM artifacts to be applied to each area, for example, the items and requests to be deployed to an area.
As new deployment jobs are added to the deployment job queue, the deployment manager automatically reads the details of the new jobs and runs them.
Deployment rules
The deployment server uses the following rules to run deployment jobs, which ensures that jobs are processed efficiently:
-
When a deployment job is selected to run, the affected deployment areas are locked by the deployment manager. This ensures that no other deployment job can run in the areas until the deployment job finishes. After the job is completed, the areas are automatically unlocked.
-
When a deployment job affects multiple deployment areas it runs concurrently in as many deployment areas as possible, depending on:
-
The sequence numbers assigned to each area. For details about setting sequence numbers, see Set deployment sequence.
-
The availability of system resources such as free application servers in the pool.
-
-
Deployment jobs submitted in a single user session run sequentially in the order that they were submitted as soon as all the deployment areas affected by each job are available.
-
Deployment jobs submitted from different user sessions run concurrently in the order that they were submitted as soon as all the deployment areas affected by each job are available.
The deployment server does not access the deployment areas. Instead, it uses application servers to perform database metadata queries, obtain connections to library servers on deployment area nodes, and carry out the deployment operations in each area.
Deployment server setup
A single deployment server process can monitor one or more deployment queues in multiple base databases. To configure the deployment server, you set the global and the base database parameters in <installdir>/dfs/ deploy_config.dat file.
By default, the configuration file is set up by the installer to monitor the default database in the <installdir>/dfs/ listener.dat listener configuration file.
Global parameters
The global parameters in deploy_config.dat apply to all base databases.
Parameter | Description |
---|---|
log_dir |
Specify this parameter if you want to:
By default, the logging is disabled. |
idle_timeout |
Specifies the timeout after which the deployment server closes unused application server connections. To keep unused connections in the connection pool until the deployment server terminates, set the parameter to 0. Default timeout: 60. |
Base database parameters
The base database parameters in deploy_config.dat are database-specific.
Parameter | Description |
---|---|
database
database_[n] |
Specifies one or more databases to be monitored for new deployment jobs. where n = 1, 2, 3, ... You must specify at least one database. Otherwise the deployment server remains inactive. |
host
|
Specifies the application server host name and port for the databases that correspond to the parameters database and database_[n]. By default, the local host name is used. |
dmuser
|
Specifies the deployment queue service user account. This is a registered Dimensions CM user that is used to read and initiate deployment job processing in databases that correspond to the parameters:
Default account: dmsys. You must register the passwords corresponding to the Dimensions CM users in installdir/dfs/ registry.dat, using the dmpasswd utility. |
threads
|
Specifies the number of threads to use for running deployment jobs in the databases that correspond to the parameters:
Default number of threads: 20. |
Configuration examples
Use the following examples to help you set up your deployment server.
database=cm_typical@dim10
host=dimsrv:671
dmuser=dmsys
database_1=devtest@dim10
host_1=dimsrv:671
dmuser_1=dmsys
database_2=production@dim10
host_2=dimsrv:671
dmuser_2=dmsys
log_dir=c:/temp/
idle_timeout=10
database_1=devtest@dim10
host_1=dimsrv:671
dmuser_1=dmsys
threads_1=5
database_2=production@dim10
host_2=dimprodsrv:672
dmuser_2=dmadmin
threads_2=20
database_3=devtest2@dim10
host_3=dimsrv:671
dmuser_3=dmsys
threads_3=10
See also: