Nginx TCP (WebSockets) Timeout / Keepalive Config

Je suis en utilisant nginx version: nginx/1.0.12

Mon nginx.conf ressemble à ceci:

#user  nobody;
worker_processes  1;  

error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}

tcp {

     upstream websockets {
      ## Play! WS location
       server 127.0.0.1:9000;
       check interval=3000 rise=2 fall=5 timeout=1000;
     }    

    server {
        listen 80; 
        listen 8000;
        server_name socket.domain.com;

        tcp_nodelay on; 
        proxy_pass websockets;
        proxy_send_timeout 300;

    }   

     # virtual hosting
     #include /usr/local/nginx/vhosts/*;
}

Ma demande semble tomber des websocket connnections tous les 75 sec (ou presque) je pense que c'est à cause de Nginx par défaut de la directive keepalive config. Comment augmenter le délai d'attente?

Vérifier wiki.
Je l'avais essayé plus tôt: j'ai ajouté keepalive 32 sur la ligne 20 (sous serveur 127.0.0.1:9000) et je reçois nginx: [emerg] directive inconnue "keepalive" dans /usr/local/nginx/conf/nginx.conf:20
si je supprime l'amont de la directive (je ne suis pas d'équilibrage de la charge), et ajouter un proxy passe dans la balise de serveur, alors que dois-je faire?
Avez-vous ajouté proxy_http_version 1.1; et proxy_set_header Connection "";? Lire en lien avec soin.
J'ai essayé de suivre vos notes, mais ils semblent être pour http et pas pour le protocole tcp. Mise à jour de nginx.conf (pastebin.com/NP9BhFrt) donnant erreurs similaires.

OriginalL'auteur Sameer Segal | 2012-05-11