首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Haproxy能处理任何一个长连接的请求吗?

Haproxy能处理任何一个长连接的请求吗?
EN

Stack Overflow用户
提问于 2013-08-15 00:57:27
回答 1查看 894关注 0票数 2

我使用Haproxy作为Layer7 http代理将客户端的请求传输到一个服务器。作为一个长连接,在将每个请求传输到服务器之前,我需要将一些url字符串替换为另一个。例如:reqirep ^([^\ ])\ /test/(.) \1\ /serverfault/\2

我跟踪并发现HAProxy只处理每个连接的第一个请求。换句话说,Haproxy只替换了第一个POST /test/为什么要发布/堆栈溢出/为什么。第二,第三..。不会..。

“代理手册”说:“当客户端与服务器通信时,Haproxy只会分析、记录和处理每个连接的第一个请求。”由于下一个请求与长连接中的前一个请求有关,所以我希望替换字符串并保持连接处于活动状态,并让客户端在他们需要时关闭连接。我已经尝试过“选项httpclose”或“选项http-server-close”,这对我不起作用。在一个长连接中,Haproxy不支持用reqirep替换任何请求吗?是否有任何选择或方法来实现它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-19 15:06:49

哈代理还没有完全支持维持生命。计划在1.5“稳定”时全面实施。尽管如此,我已经在一个非常大的生产环境中使用1.5分支机构已经将近一年了,没有任何问题。

我建议使用http close,这只会将haproxy服务器关闭到后端服务器(这意味着它将允许客户端使用保存alives来访问haproxy)。这将解决不修改第二、第三等请求的问题。听起来好像你想要同一个客户总是去同一个后端。如果是这样的话,那么您可以考虑使用棍子表或cookie关联。https://code.google.com/p/haproxy-docs/wiki/cookie

如果您真的需要将look一直保存到后端,您可能需要考虑使用不同的产品,但从您的描述来看,我认为您可以通过使用持久性来解决问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18244728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档