如何通过 TCP 接收消息并使用 HAProxy 将消息转换为 HTTP 并转发

问题描述 投票:0回答:1

我正在尝试通过端口 8082 上的 TCP 连接获取消息(文本字符串、JSON),并将其作为 HTTP 请求转发到端口 80 上的 apache 服务器(在同一台计算机上)。我认为我的配置不正确,因为它不起作用 =)

会议:

frontend sample_httpd
bind *:8082
mode tcp
default_backend sample_httpd
option tcplog
http-request set-method GET

backend sample_httpd
balance roundrobin
mode http
server master 127.0.0.1:80 check

日志:

Sep 20 20:42:28 DR-tracktape haproxy[2147]: 185.205.225.36:42593 [20/Sep/2023:20:42:28.125] sample_httpd sample_httpd/master 1/0/500 0 – 1/1/0/0/0 0/0
http tcp converters haproxy
1个回答
0
投票

[由于声誉低于50,我无法在上面发表评论。]

我只是想知道,您是否在默认部分指定了任何超时?

原因是,在日志中我看到“0 -”,它实际上是计时器的占位符,它应该报告请求和响应阶段之间经过的时间,而在您的情况下它为零。

如果您还没有这样做,请在默认部分尝试这些超时,或者在此处分享完整的 haproxy.cfg 文件

defaults
    timeout connect 5s
    timeout client  30s
    timeout server  30s
© www.soinside.com 2019 - 2024. All rights reserved.