# Multiple Synchronous Standby Servers

> Source chapter 3.8 for PostgreSQL 9.6.

---

LLMS index: [llms.txt](/en/llms.txt)

---

<div class="feature-source-note"><span class="feature-edition-badge">Beta 1</span><span><strong>Source pages:</strong> PDF 49</span><span><a href="https://github.com/nori-shinoda/documents/blob/1773200c5362476c4a549222b7d17fa91f546cae/postgresql96_beta1_new_features_en_20160606-1.pdf">Original PDF on GitHub</a></span></div>

<p class="feature-page-marker" id="pgfeat-9-6-synchronous-pdf-page-49">PDF page 49</p>

Support synchronous replication with multiple synchronous standby servers. Specify the number of instances to execute synchronous replication to the parameter synchronous_standby_names in primary instance. Syntax

```text
synchronous_standby_names = num_sync (application_name, application_name, …)
```

Specify the number of instances to execute synchronous replication to the num_sync in integer of 1 or more. If specified zero or less , if omitted, the instance can't start. If the specified number of instances cannot be ensured, update transaction of the primary instance is stopped. In the example below, there are three instances that can execute synchronous replication, and execute synchronous replication to two instance actually.

**Example 46.** Multiple synchronous standby server replication

```text
postgres=> SHOW synchronous_standby_names ;
    synchronous_standby_names
----------------------------------
 2 (standby1, standby2, standby3)
(1 row)
postgres=> SELECT application_name, sync_state FROM pg_stat_replication ;
 application_name | sync_state
------------------+------------
 standby1         | sync
 standby2         | sync
 standby3         | potential
(3 rows)
```

```text
The parameter synchronous_standby_names can be written in the same format as the previous
version. In that case instance that can execute synchronous replication is one.
```
