This is a bare-bones web service, to quickly get started in building a stateless (and therefore clusterable) web service.
Clone this repo.
git clone https://github.com/paulswebapps/expressAPIInstall yarn
brew install yarnInstall using npm or yarn.
yarnRun all tests
yarn testWhen debugging, run server.js directly. For VS Code, the debugger's configuration file could look like this:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceRoot}/server.js"
}
]
}To confirm that the server is up and responding to request, ping http://localhost:3001/healthcheck. It should return some sort of positive confirmation message, like "we are healthy and good".
Node, by default, runs on a single core. To spawn multiple processes, load-balanced across cores, we use the cluster module, called in by PM2.
Start the server cluster, one process per core, load balanced.
yarn startYou should see PM2's report of online node load-balanced processes.
For benchmarking, it can be useful to monitor your node processes.
yarn run monitorWhen you're done using your cluster, stop all processes.
yarn stop