> For the complete documentation index, see [llms.txt](https://docs.vega25.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.vega25.com/tandem/tandem.md).

# Tandem

Active-Active Clustered Recorder redundancy for Milestone XProtect

## Introduction

<figure><img src="https://92057524-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fi0mCLda4cGtI3Jwb6IQA%2Fuploads%2Fx3DLb7ale3dVkCDXSm71%2Ftandem-about-panel-4x.png?alt=media&amp;token=8c9734ab-6ae8-48a7-b51e-20a6874e824d" alt="" width="563"><figcaption><p>Tandem: Schematic</p></figcaption></figure>

Tandem is an Active-Active Recorder redundancy solution for Milestone XProtect

It pairs two XProtect recording servers — physical machines or virtual machines — into a single logical recorder. Both members run continuously, record independently from the same cameras at all times, and hold the same configuration. To the Management Server, to Smart Client, and to everything integrated with the VMS, the pair appears as one recording server.

Because both members record at all times, the system keeps two copies of the video and can fail over automatically, with no operator action during failure, and no gap in the recordings.&#x20;

Every XProtect Smart Client and integrated third-party component (PSIM, Analytics, Access Control, etc.) continues operating through the failover without interruption.

## The problem it solves

When a recording server fails, a conventional failover loses video. Cameras must be reassigned to surviving recorders, streams re-established, and recording restarted — and everything between the moment of failure and the moment recording resumes is gone. You can't recover it afterward because it was never written anywhere, unless you use edge storage. Even then, the failover recorder can't access archive content while the primary server is down.

Tandem addresses this by having:

* **Two full copies of the video.** Both members record independently from the same cameras, continuously. Each holds a complete copy of the recordings, on separate hardware and, if you choose, in separate locations.

<figure><img src="https://92057524-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fi0mCLda4cGtI3Jwb6IQA%2Fuploads%2Fls6enVNV0bDzOQjAQVYD%2Ftandem_two_full_copies.jpg?alt=media&amp;token=d84a5fb0-f24b-4bed-904f-9bbdc2e9b6af" alt="" width="375"><figcaption><p>Two full, independent video copies</p></figcaption></figure>

* **No gaps during failover.** The surviving member was already recording before the failure and keeps recording through it. Nothing is missing from the timeline across the moment of failure, or before.
* **Automatic failover.** The surviving member is already running, already streaming, and already configured. Taking over means attaching to the XProtect services — not starting a recorder, reassigning cameras, or rebuilding state.

### What the Tandem software does

Tandem installs on both members of the pair and performs three functions.

1. **Pairing.** Establishes the relationship between the two recorders and presents the pair to XProtect as a single logical recorder.
2. **Configuration replication.** Continuously copies configuration from the attached member to the headless member, so the pair never drifts apart. Cameras, storage settings, and device configuration added on the attached member are applied to its partner without operator action.
3. **Backfill.** When a member returns after an outage, Tandem copies the media it missed from the member that stayed online. The pair converges to a full copy of the recordings in both locations.

### What Tandem does not do

* It does not make the Management Server or its SQL database redundant. For that, use Vega Systems' RMF, XProtect Management Server Failover, Windows Server Failover Clustering, or similar.

### Next steps

* [System Requirements](/tandem/system-requirements.md) — supported XProtect versions, hardware, and operating systems.
* [Network Requirements](/tandem/network-requirements.md) — the ports Tandem needs between the two members.
* [Installation](/tandem/installation.md)— components and where each is installed.
* [Configuration](/tandem/configuration.md) — configuring the two recorders in Management Client.
* [Recovering from Recorder Failure](/tandem/recovering-from-recorder-failure.md) and [Failback](/tandem/recovering-from-recorder-failure/failback.md) — what happens during a failover, and what backfill does afterward.

{% hint style="info" %}
Product overview and data sheet: [vega25.com/tandem](https://vega25.com/tandem)
{% endhint %}
