Cuando mi sitio tiene más de ~ 80 usuarios en línea, socket.io no puede hacer un apretón de manos. Revisé mis registros de nginx y este error aparece a menudo:
*374 upstream prematurely closed connection while reading response header from upstream, client:Así que revisé mi configuración de nginx y esto es lo que tengo:
files: "/etc/nginx/conf.d/01_websockets.conf" : mode: "000644" owner: root group: root content : | upstream nodejs { server 127.0.0.1:8081; keepalive 256; } server { listen 8080; location / { proxy_pass http://nodejs; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } "/opt/elasticbeanstalk/hooks/appdeploy/enact/41_remove_eb_nginx_confg.sh": mode: "000755" owner: root group: root content : | mv /etc/nginx/conf.d/00_elastic_beanstalk_proxy.conf /etc/nginx/conf.d/00_elastic_beanstalk_proxy.conf.old~
//client side var origin = window.location.origin; console.log("origin is: " + origin); var socket = io.connect(origin, {'force new connection': true}); //server side app.set('port', process.env.PORT || 8081); var server = require('http').createServer(app); var io = require('socket.io')(server); server.listen(8081);¿Hay algo que estoy haciendo mal?