Stack Overflow Careers的服务类似于:
user -> internet -> our fw -> nginx -> haproxy -> web farm
- FreeBSD是正在使用的操作系统
- 此框上没有防火墙或QoS
- nginx处理我们的SSL终止
- haproxy处理负载平衡
- nginx / haproxy正在以每种方式推动约15 Mbps
在正常操作期间,nginx接收HTTP请求,执行其操作,然后将请求移交给绑定到同一框上的回送地址(127.0.0.1)的haproxy实例。
为了在前几天进行一些故障排除,我将haproxy实例移到了运行nginx的同一接口上。这立即为所有请求增加了100ms的延迟。该接口不是真正的物理接口,而是鲤鱼接口。
谁能向我解释为什么会这样?与数据包队列竞争?还是因为“软”回环总是更快?我在这里缺少一些基本知识,希望有人能对我进行教育。
1
不管是通过lo还是e {th,n}端口发送到收件箱地址的数据包,都不会碰到Linux中的硬件。不过,关于BSD,我不能说权威。
—
BMDan 2010年
确定要切换到相同的界面吗?将haproxy切换回环回时100ms消失了吗?
—
tomjedrz
@tomjedrz-是的。我一改回去,等待时间就消失了。
—
Michael Gorsuch