Hi, You can use StrongLoop's strong-cluster module to autoscale up or down and solve all these issues. If app is running as single process, with a single command or through the StrongOps GUI, more processes can be added as part of the cluster. All processes will be aware of each other and part of the same application. Strong-Cluster will take care of workload management and load balancing as well with Master-Slave configuration.
The application will listen on a single port - say hostname:3000. When requests come in the master will distribute requests to multiple processes automatically. Any process doesn't need to be hit separately. For storing session information of the cluster, Strong-Cluster has an additional module called Strong-Cluster-Store, which uses redis type store to maintain cluster info. *Some doc links :* http://docs.strongloop.com/display/DOC/Clustering+applications http://docs.strongloop.com/display/DOC/Strong+Cluster+TLS+Store http://docs.strongloop.com/display/DOC/Using+Strong+Store+for+Cluster http://docs.strongloop.com/display/DOC/Strong+Cluster+Connect+Store http://docs.strongloop.com/display/DOC/Socket+IO+Store+for+Clusters http://docs.strongloop.com/display/DOC/Cluster+controller+API http://docs.strongloop.com/display/DOC/Strong+store+cluster+API *StrongOps UI driven cluster control:* http://docs.strongloop.com/display/DOC/Controlling+an+application+cluster *Tech videos:* http://vimeo.com/77870958 - how to cluster node apps http://www.youtube.com/watch?v=BurCdNAl5eM - StrongOps 2.0 quick preview Kind Regards, Shubhra On Thursday, December 19, 2013 8:50:03 AM UTC-8, Bijuv V wrote: > > Hi , > > I have a Web server with an Application developed using express. In the > application we do mention the port at which the application should listen > for requests. For eg 3000. > > If I spawn multiple node processes on the same machine, there will be a > conflict on the ports. How can this be achieved (apart from the below > options)? > > The options that Im aware of are > a. Use Cluster feature of node. Everything is handled by node. Still > experimental AFAIK. > b. Use multiple VM's to deploy each instance > c. start node on different ports - 3001 - 3008. Put a hardware LB before > the same which will send the requests to one of the Node instances. - Dont > want to invest on a H/W LB. > > I was watching the video from Ryan. > http://www.youtube.com/watch?v=F6k8lTrAE2g > > He mentions about the limitations of node being single threaded and also > talks about server file descriptors usage to build Web Servers. However, I > could not get the details of how the file descriptors should be configured > so that the requests go to one of the 8 instances on the machine. > -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
