La réplication logique requiert de nombreuses configurations pour
fonctionner. La plupart des options ne sont pertinentes que d'un côté de la réplication.
Cependant, max_replication_slots
est utilisée aussi bien sur le publieur
que sur l'abonné, mais a une différente signification pour chacun.
wal_level
doit être
mis à logical
.
max_replication_slots
doit être mis au moins au nombre d'abonnements attendus de se connecter, plus
une réserve pour la synchronisation des tables.
max_wal_senders
doit être mis à au moins la même valeur que max_replication_slots
, plus le nombre de
réplicas physiques qui sont connectés en même temps.
Le walsender de réplication logique est aussi impacté par
wal_sender_timeout
.
max_replication_slots
doit être mis à au moins le nombre d'abonnements qui seront ajoutés à l'abonné, plus une réserve
pour la synchronisation des tables.
max_logical_replication_workers
doit être mis à au moins le nombre d'abonnements (pour les processus apply leader),
plus une réserve pour les processus de synchronisation des tables et les processus apply parallèles.
max_worker_processes
peut être ajusté pour accommoder les processus de réplication, au moins
(max_logical_replication_workers
1
). Notez que certaines extensions et requêtes parallèles puisent aussi
des slots de processus dans max_worker_processes
.
max_sync_workers_per_subscription
contrôle la quantité de parallélisme lors de la copie initiale des données lors de
l'initialisation de l'abonnement ou quand des nouvelles tables sont ajoutées.
max_parallel_apply_workers_per_subscription
contrôle la quantité de parallélisme pour le flux des transaction en cours avec
le paramètre d'abonnement streaming = parallel
.
Les processus de réplication logique sont aussi affectés par
wal_receiver_timeout
,
wal_receiver_status_interval
et
wal_retrieve_retry_interval
.