在数据库模式下Haproxy缓慢重新加载

最近我开始使用伟大的工具进行负载均衡 – Haproxy。

只有一个令人不安的事情,我不知道如何处理它。 我们使用haproxy来负载平衡mysql的stream量。 当有大量的stream量和很多的连接,haproxy需要很长的时间来重新加载(〜30分钟),stream量较less,它会在1分钟内重新加载。

我重新加载:

service haproxy reload 

当然,如果我需要在configuration上做一个紧急的改变,我希望haproxy能够快速地重新加载。 终止等待断开的haproxy实例会导致msyql连接断开连接。

它看起来像我在haproxy的设置或应用程序的设置中犯了错误。 如果你知道如何解决这个问题,请帮助我。

谢谢!

如果将-sf传递给HAProxy(可能是init脚本的作用),则旧的haproxy将处理连接,直到不再使用。 所以只要有一个连接打开,haproxy将有两个实例,直到他们都完成了。

如果您的应用程序使用连接池(保持连接打开以供重用),则可能需要一段时间才能closures这些连接。 如果你正在使用连接池,那么你可能想要查找某种MaxAge参数,这个参数会在连接打开一段时间后closures连接(有了这样的事情,在事务之后换句话说,在连接返回到池之前)。