SORU
5 Aralık 2010, Pazar


HAProxy WebSocket Bağlantı Kesme

HAProxy node.js bir uygulama için istekleri, bir alt etki alanı üzerinde, göndermek için kullanıyorum.

WebSockets işe almak için kuramıyorum. Şimdiye kadar sadece müşteri WebSocket bağlantı kurmak için almak mümkün olmuştur, ama kısa bir süre sonra gerçekleşen bir kopukluk var.

Ubuntu kullanıyorum. socket.io node-websocket-server çeşitli sürümleri kullanıyorum. İstemci Safari veya Chrome en son sürüm olduğunu da. HAProxy sürüm 1.4.8

İşte benim HAProxy.cfg

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

defaults 
    mode http 

    maxconn 2000 

    option http-server-close
    option http-pretend-keepalive

    contimeout      5000
    clitimeout      50000
    srvtimeout      50000

frontend HTTP_PROXY
    bind *:80 

    timeout client  86400000

    #default server
    default_backend NGINX_SERVERS

    #node server
    acl host_node_sockettest hdr_beg(host) -i mysubdomain.mydomain

use_backend NODE_SOCKETTEST_SERVERS if host_node_sockettest


backend NGINX_SERVERS 
server THIS_NGINX_SERVER 127.0.0.1:8081

backend NODE_SOCKETTEST_SERVERS
timeout queue   5000
timeout server  86400000

server THIS_NODE_SERVER localhost:8180 maxconn 200 check

Herhangi bir yardım gerçekten takdir. Web ve e-posta listesi trawled ettim ama önerilen çözümlerin hiç değil.

(s.s. bu serverfault için olabilir, ama burada yazılan seçtim yani S. O) diğer HAProxy soru var

Teşekkürler Ross

CEVAP
19 Ocak 2011, ÇARŞAMBA


Soket en son sürüme yükseltin.ıo (0.6.8 ->HAProxy ile)yamalı npm install socket.io@0.6.8, ve HAProxy en son sürümünü indirin.

Burada config dosyası bir örnek:

global
    maxconn     4096 # Total Max Connections. This is dependent on ulimit
    nbproc      2

defaults
    mode        http

frontend all 0.0.0.0:80
    timeout client 5000
    default_backend www_backend
    acl is_websocket hdr(Upgrade) -i WebSocket
    acl is_websocket hdr_beg(Host) -i ws

    use_backend socket_backend if is_websocket

backend www_backend
    balance roundrobin
    option forwardfor # This sets X-Forwarded-For
    timeout server 5000
    timeout connect 4000
    server server1 localhost:8081 weight 1 maxconn 1024 check
    server server2 localhost:8082 weight 1 maxconn 1024 check
    server server3 localhost:8083 weight 1 maxconn 1024 check

backend socket_backend
    balance roundrobin
    option forwardfor # This sets X-Forwarded-For
    timeout queue 5000
    timeout server 5000
    timeout connect 5000
    server server1 localhost:8081 weight 1 maxconn 1024 check
    server server2 localhost:8082 weight 1 maxconn 1024 check
    server server3 localhost:8083 weight 1 maxconn 1024 check

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS North America

    ASUS North A

    12 AĞUSTOS 2008
  • bunliu

    bunliu

    2 Mayıs 2007
  • PC Learning Zone - Computer Training

    PC Learning

    8 EYLÜL 2006