Show TOC

 Parallel DeploymentLocate this document in the navigation structure

Use

Parallel Deployment allows several online deployment operations to run simultaneously. As a result, it scales deployments in an AS Java Cluster, and improves the performance of the online deployment operations.

Prerequisites

Parallel deployment is feasible for application sets that have no or little overlapping dependency regions.

There are parallel and strictly nonparallel software types. The strictly nonparallel ones cannot take advantage of this functionality.

The online deployments that does not require restart to be deployed, by default can be deployed in parallel batches.

Note Applications that are of parallel nature must have all their corresponding containers parallel enabled too. If only one container in the application is not parallel, the whole application is not parallel.

The offline deployments that require restart to be deployed, cannot be deployed in parallel batches.

Activities
  • Each container of the application reports if it can handle parallel deployment.
  • The Deploy Controller calculates the deploy time dependencies and evaluates which components need to be locked to avoid collision.
  • All necessary locks are placed. They are as described bellow:
  • Deployment
    • All sorted components, which are in the deployment batch, are going to be locked with EXCLUSIVE lock and the first level of the referred components are locked with SHARED lock
    • The same logic applies for all Error Strategies and the same components are locked
  • Undeployment - depends on the Undeployment Strategies
    • IfDependingStop - All sorted components, which are in the deployment batch, are going to be locked with EXCLUSIVE lock and the first level of the components referring them are locked with SHARED lock.
    • SkipDepending - Puts EXCLUSIVE lock for all the sorted components in the batch.
    • UndeployDepending - Puts EXCLUSIVE lock for all the sorted components in the batch and all depending on them recursively.
  • The parallel deployment operation over the components starts.
  • When the parallel deployment operation finishes, the locks are removed.