我正在使用postgresql在主从模型中搜索没有负载平衡的HA解决方案。到目前为止,我最喜欢的解决方案是日志传送同步复制。但我有一个主要问题,那就是,如果我的从属服务器不可用,我的主服务器会继续运行吗?或者它会等待我的从属服务器的确认,直到它再次启动?
如果只有一个备用,主机将停止(按设计(。
master仍将提供只读语句,但在备用语句返回之前,所有写入操作都将被阻止。
您可以通过在synchronous_standby_names
中提供多个候选者来避免这种情况。
请参阅PostgreSQL文档中的SYNCHRONOUS-REPLICATION。
我找到了另一种方法来防止在slave崩溃时主机停止。如果主postgresql.conf
文件中的wal_sender_timeout
崩溃,我们可以使用它来断开与从属的连接。