cygwin中的HAProxy重载问题

时间:2013-06-19 00:38:47

标签: windows cygwin haproxy

使用此命令重新加载HAProxy时出现此问题:

haproxy -D -f gateway.cfg -p /var/run/haproxy.pid -D -sf $(cat /var/run/haproxy.pid)

错误结果

[ALERT] 169/001728 (3844) : Starting frontend proxy: cannot bind socket

我尝试在配置中添加用户root或Administrator但无济于事。根据ls -la的文件权限是Administrator none。这让我觉得HAProxy不完全支持windows,我想知道-sf / -st前缀是如何工作的? (我在unix系统中尝试过,结果工作正常.HAProxy配置如下所示

global  
daemon
maxconn 1024
pidfile /var/run/haproxy.pid

defaults
log global
mode    http
option  httplog
option  dontlognull
retries 3
option redispatch
contimeout  5000
clitimeout  50000
srvtimeout  50000

frontend proxy
bind *:80
default_backend servers

backend servers
balance roundrobin
option httpchk GET /
option forwardfor
option httpclose
stats enable
stats refresh 10s
stats hide-version
stats uri /admin?stats
stats auth admin:admin
stats realm Haproxy\ Statistics

server svr0 127.0.0.1 check inter 5000

2 个答案:

答案 0 :(得分:1)

HAProxy通常不支持Windows,即使在Cygwin下也是如此。 HAProxy包含针对Linux和各种UNIX系统的非常具体的优化,这使得很难在Windows上运行它。

即使你以某种方式让它运行,它也会导致糟糕的性能,永远不会得到一个稳定甚至中等速度的系统。在Windows上运行HAProxy并尝试处理各种仿真层没有任何意义,即使在Linux上运行的1瓦以下的ARM盒中也能获得出色的性能。

答案 1 :(得分:-1)

您可以在Windows下运行大多数haproxy版本。这是使用cygwin编译的1.4.24:

http://www.mediafire.com/download/7l4yg7fa5w185bo/haproxy.zip

您可以将它用于测试目的,但是您应该避免使用它进行生产,只能在Windows下进行开发,例如轻松转换到Linux ...