【发布时间】:2019-09-26 08:38:24
【问题描述】:
我们正面临一个问题,我们的客户将其命名为 A。正在尝试连接 DB 服务器(Cockroach)名称 B 通过 ha-proxy 进行负载平衡
A < -- > haproxy < -- > B
现在,当我们的客户端 A 收到 Broken Pipe 错误时,每一次。
但我不明白为什么?
Cockroach 服务器已经具有以下默认值,即 60 秒。
COCKROACH_SQL_TCP_KEEP_ALIVE ## which is enabled to send for 60 second
此外,我们的 haproxy 配置具有以下设置。
defaults
mode tcp
# Timeout values should be configured for your specific use.
# See: https://cbonte.github.io/haproxy-dconv/1.8/configuration.html#4-timeout%20connect
timeout connect 10s
timeout client 1m
timeout server 1m
# TCP keep-alive on client side. Server already enables them.
option clitcpka
选项clitcpka
那么是什么导致 TCP 连接在每一端都启用 keepalive 时断开。
【问题讨论】:
标签: postgresql haproxy keep-alive cockroachdb tcp-keepalive