gpt4 book ai didi

linux - HAProxy 降低吞吐量

转载 作者:太空宇宙 更新时间:2023-11-04 10:28:04 24 4
gpt4 key购买 nike

我认为我在使用 HAProxy conf 时做错了什么,因为在使用 HAProxy 和一个 AWS 实例进行的真实测试中,我的吞吐量下降到 25%。以下是我的相关(非常简单)配置:

global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 20000
user haproxy
group haproxy
daemon
stats socket /var/lib/haproxy/stats
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m

timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 30000
frontend localnodes
bind *:80
mode http
default_backend nodes
backend nodes
mode http
balance roundrobin
hash-type consistent
option httpchk /health
server w1 xx.xx.xx.xx:80 check id 1

我启用了日志记录。日志中的典型条目如下所示:

 Dec  2 09:29:05 localhost haproxy[2782]: xx.xx.xx.xx:43908
[02/Dec/2016:09:29:05.940] localnodes nodes/w1 38/0/0/1/41 200 130 - -
---- 36/36/12/2/0 0/0 "GET /ep?key=123&message=XXQSYI HTTP/1.1" Dec 2 09:29:05 localhost haproxy[2782]: xx.xx.xx.xx:43920
[02/Dec/2016:09:29:05.941] localnodes nodes/web01 39/0/0/0/40 200 160
- - ---- 35/35/11/0/0 0/0 "GET /q1?key=123&val=123 HTTP/1.1" Dec 2 09:29:05 localhost haproxy[2782]: xx.xx.xx.xx:43933
[02/Dec/2016:09:29:05.955] localnodes nodes/web01 24/0/0/1/26 200 134
- - ---- 34/34/11/1/0 0/0 "GET /q1?key=123&val=123 HTTP/1.1"

我的吞吐量是我实例的直接流量的 25%。这是糟糕的表现。我做错了什么吗?

编辑顺着日志往下看,有些日志清楚的显示从HAProxy到server的时间过长

Dec  2 10:56:59 localhost haproxy[25988]: xx.xx.xx.xx:39789 [02/Dec/2016:10:56:58.729] main app/app1 0/0/1000/1/1002 200 449 - - ---- 13/13/13/7/0 0/0 "GET / HTTP/1.1"
Dec 2 10:56:59 localhost haproxy[25988]: xx.xx.xx.xx:39803 [02/Dec/2016:10:56:58.730] main app/app1 0/0/999/1/1000 200 377 - - ---- 12/12/12/7/0 0/0 "GET / HTTP/1.1"
Dec 2 10:56:59 localhost haproxy[25988]: xx.xx.xx.xx:39804 [02/Dec/2016:10:56:58.730] main app/app1 0/0/999/1/1000 200 277 - - ---- 11/11/11/7/0 0/0 "GET / HTTP/1.1"

最佳答案

从您的日志来看,您的大部分时间都花在了连接服务器上。例如,您花费 1000、999 和 999 毫秒进行连接。这可能与您在每次事务后使用 option http-server-close 立即关闭与服务器的连接有关。因此,每次都必须重新建立 TCP 连接(如果这是请求之间的同一客户端)。

总的来说,您似乎在每个请求上花费了大约 1 秒,这对我来说并不可怕。在使用 HAProxy 之前,您看到了什么?

关于linux - HAProxy 降低吞吐量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40929720/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com