論理レプリケーションでは、いくつかの構成オプションを設定することが必要です。
ほとんどのオプションは、レプリケーションの一方の側にのみ関連します。
ただし、max_replication_slots
は、パブリッシャーとサブスクライバーの両方で使用されますが、それぞれで異なる意味を持ちます。
wal_level
はlogical
に設定することが必要です。
max_replication_slots
は、接続する予定のサブスクリプション数と、テーブル同期のために予約された数を加えた数以上に設定することが必要です。
max_wal_senders
は、少なくともmax_replication_slots
に同時に接続されている物理レプリカの数も加えたものと同じ数に設定することが必要です。
論理レプリケーションのwalsenderもwal_sender_timeout
の影響を受けます。
max_replication_slots
は、少なくともサブスクライバーに追加されるサブスクリプションの数に、テーブル同期用の予約を加えた数以上に設定することが必要です。
max_logical_replication_workers
は、少なくともサブスクリプション数(リーダー適用ワーカー用)に加えて、テーブル同期ワーカーとパラレル適用ワーカー用に予約された数を加えた数以上に設定することが必要です。
max_worker_processes
は、少なくともレプリケーションワーカーに対応するように調整する必要があるかもしれません(max_logical_replication_workers
+ 1
)。
なお、一部の拡張機能やパラレルクエリもmax_worker_processes
からワーカースロットを取得することに注意してください。
max_sync_workers_per_subscription
は、サブスクリプション初期化時や新しいテーブルが追加されたときの初期データコピーの並列度を制御します。
max_parallel_apply_workers_per_subscription
は、サブスクリプションパラメータstreaming = parallel
で進行中のトランザクションのストリーミングに対する並列度を制御します。
論理レプリケーションワーカーも、wal_receiver_timeout
、wal_receiver_status_interval
、およびwal_retrieve_retry_interval
の影響を受けます。