Some applications require persistence to continue to run after a page view has concluded. Node.js or other backend socket/server pairs connect a front-end process, like a web page view, with a backend process such as data crunching. For such circumstances, clients with Developer+ packages may run daemons necessary for their web site to operate – please no game servers, bitcoin miners, TeamSpeak servers, IRC bouncers, etc.
Port ranges are available within the control panel under Account > Summary > Development. Port ranges vary from server-to-server and are based primarily on provisional precedence. Always check the control panel to make sure you’re listening in the right port range, which is always between the port range 40010 and 49999. Failure to adhere to this port range will result in automatic termination of the offending service.
TCP or Socket?
TCP is only necessary if you need a service external from the server to communicate with it. Otherwise, a local UNIX socket is not only ~33% faster, because the TCP stack is eschewed, but also only applications that originate on the server may access the service. Effectively, a firewall is erected prohibiting communication from third-parties outside the network. You can run as many services that listen on a UNIX domain socket that your account needs.