Subj : exec/ircd.js To : Cvs Commit From : Deuce Date : Sat May 28 2016 10:16:00 exec ircd.js 1.169 1.170 Update of /cvsroot/sbbs/exec In directory cvs:/tmp/cvs-serv15122 Modified Files: ircd.js Log Message: Various fixups with an eye to reducing latency and fixing ping timeouts 1) Don't use socket.recvline() on non-blocking sockets. Instead, have the recvq object parse lines and receive 64k at a time. 2) Pass all received data through the recvq object rather than attempt to process one command per recv(). 3) Pass all data sent on established connections through the sendq object rather than only use it if send() fails. 4) Move client throttling completely into ircd_user.js and out of the queue processing function so we don't accidentally throttle server connections. 5) send() the entire sendq contents as a single send() rather than one line per main loop. 6) Parse the entire recvq each time through the main loop. This requires tracking when an unregistered connection is replaced by either a client or a server connection. --- þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net þ wcQWK 7.0 ÷ ILink * Omicron Theta * Southaven MS * winserver.org --- QScan/PCB v1.20a / 01-0462 * Origin: ILink: CFBBS | cfbbs.no-ip.com | 856-933-7096 (454:1/1) .