Browse Prior Art Database

DEPLOYING MULTIPLE APPLICATIONS IN PARALLEL TO IMPROVE THE INSTALLATION PERFORMANCE

IP.com Disclosure Number: IPCOM000233980D
Publication Date: 2014-Jan-06

Publishing Venue

The IP.com Prior Art Database

Related People

Karthik Subramanian: AUTHOR

Abstract

Techniques are presented herein to achieve parallelism within the installation procedure and to extend the same to achieve the parallelism in a device, where there is a need to deploy more than one application/package for the deployment to complete. This approach minimizes the time taken to complete the deployment by aiding in the reduction of the deployment time/down time of the application.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 14% of the total text.

Page 01 of 15

DEPLOYING MULTIPLE APPLICATIONS IN PARALLEL TO IMPROVE THE INSTALLATION PERFORMANCE

AUTHORS:

Karthik Subramanian

CISCO SYSTEMS, INC.

ABSTRACT

    Techniques are presented herein to achieve parallelism within the installation procedure and to extend the same to achieve the parallelism in a device, where there is a need to deploy more than one application/package for the deployment to complete. This approach minimizes the time taken to complete the deployment by aiding in the reduction of the deployment time/down time of the application.

DETAILED DESCRIPTION

    Installation of a software application on a device (e.g., computing device or network device) is slow when it has numerous components to be deployed and configured. However, to the end user, it is important that the software application be deployed as fast as possible, regardless of its size. Moreover, in some cases, multiple software applications need to be deployed in a specific order if the software applications are interdependent. Often there are scenarios in which it is necessary to deploy more than one application in order for clustered applications boot up. For example, the multiple software applications may be single-threaded causing slowness in the installation even though the resources are free and can be leveraged. This causes the aggregated deployment time to go up by a solid 50% to 60%, translating to an install time of 1.5 hours for a 1 GB deployment, for example.

Need For Parallelism

An installation generally is grouped as logical packages. The package deploy mechanism is to copy the packages in a sequence that is either alphabetical (as in InstallShield 5.5) or in the sequence that is determined by the initial design. The copy will be coupled usually to a pre copy set of actions (e.g., preinstall: create directory, etc.) and post copy set of actions (e.g., postinstall: register the services to windows, change owner/permissions etc.). The major flaw in this kind of a design is that the packages which are not dependent on the previous packages have to wait till the corresponding package is ready to be deployed.

Example:
p1, p2, p3 and p4 are the 4 packages to be deployed during the installation (4 independent packages). P4 has to wait till the following sequence is completed:


1. p1 pre-copy activities, p1 file copy, p1 post -copy activities


2. p2 pre-copy activities, p2 file copy, p2 post -copy activities

Copyright 2013 Cisco Systems, Inc.

1


Page 02 of 15


3. p3 pre-copy activities, p3 file copy, p3 post -copy activities

To illustrate a real use case, if the p3 pre-copy involves an operation that has to wait for a network resource like the printer, which is busy, the p4 deploy has to wait, posing a sequential wait scenario.

In some corporate cloud clusters, installing applications which are dependent on each other reduces the downtime. This may involve setting up of the machine from scratch. Typically, if a LAMP setup has to be built, then following are the steps:


•...