Component versions can be cached on agent relays

Starting with IBM UrbanCode Deploy 6.1, you can cache component versions on agent relays to enhance performance on distributed systems. The agent relays can be located in different parts of the world. Caching versions in this way provides the artifacts to agents more quickly, especially when the agents are far from the server.

Downloading artifacts prior to 6.1

Prior to version 6.1, artifacts were downloaded directly from the main server. Agent relays could be proxies for the main server, but they did not cache artifacts.

Downloading artifacts in 6.1

Starting with version 6.1, multiple agent relays access one IBM UrbanCode Deploy server. Each agent relay has its local CodeStation repository. Each agent relay synchronizes its local CodeStation repository with the main server CodeStation. When an agent requests resources, the relay checks whether it has is up-to-date resources. If not, it replicates the latest files. Artifacts are only replicated when an agent tries to download them. Therefore, if artifacts are changed after an initial download, they are not replicated again until an agent downloads them a second time.

During deployment, an agent that runs an automation or build downloads the artifacts from its local relay instead of the main server. Downloading from the local relay reduces deployment time because the artifacts are likely already local and do not have to be downloaded from the server.

This example shows how caching can reduce deployment time:
  1. IBM UrbanCode Deploy server is installed on a computer in New York.
  2. A user who accesses the server in New York is located in Seattle.
  3. To reduce download time, the Seattle user must complete these steps:
    1. Install an agent relay with caching enabled.
    2. (Optional) Run a staging process that downloads the artifacts from the CodeStation on the server in New York to the CodeStation on the agent relay cache that is installed in Seattle.

Running a staging process in the previous step fills the cache. If you skip that optional step, the cache is filled when you run the first deployment.


Feedback