I'm trying to setup a production environment with a frontend running nginx and a backend with multiple nodejs applications using pm2 for process management.

The idea is to allow horizontal scalability on the backend (and optional vertical). Is good idea use a load balancing with nginx (upstream) and also multiple process on the backend with pm2? It could be conflictive or not necessary?

If using load balance on the frontend can create multiple backend machines with a single process (horizontal). Or can use nginx only as http server and use pm2 multiprocess on the backend (vertical). Or use nginx load balance and pm2 multiprocess (horizontal and vertical)

In the past we have had problems with resizing machines in our rackspace cloud, so i prefer to balance from the frontend in horizontal.

closed as too broad by womble Jul 19 '16 at 2:42

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.