Search⌘ K
AI Features

Backwards Compatibility

Learn how backwards compatibility supports independent node operation and rolling deployments in distributed systems. Understand key techniques that enable seamless communication between different software versions, ensuring system reliability during updates.

As explained earlier, a defining characteristic of distributed systems is composed of multiple nodes. It is useful to allow the various nodes of such a system to operate independently for various reasons. A typical requirement for some applications in real life is to deploy new versions of the software with zero downtime.

Rolling deployments

The simplest way to deploy new versions of the software with zero downtime is to perform rolling deployments instead of deploying in lockstep the software to all the servers at the same time.

Note: In some cases, this is not just a nice-to-have but an inherent characteristic of the system.

Example

Mobile applications (e.g., Android applications), where user consent is required to perform an upgrade, imply ...