monitors total requests served and memory used and kills itself if reached limits
Nodejs module that monitors the total number of requests served by the process and the memory vsize consumed. When asked to limit one or both of these (through configuration), this module will kill the process.
This module is best used in cluster mode where the master process would take care of bringing back the worker process, up and running again.
This package is tested only with Node versions 8 and 10.
With npm do:
npm install process-throttle
var http = require'http'throttle = require'throttle';//Set limitsvar myThrottler ='max_requests':2;processon'exit'console.log'Server received exit command, shutting down\n';;var server = httpcreateServerreswriteHead200;resend"I have served " + processthrottlegetTotalRequestCount + " requests so far. My limit is " + max_requests + "\n";listen8000;// Add servers that need to monitor, to the throttlermyThrottleraddServerserver;
% node throttle-usage.js &% curl ''>> I have served 1 requests so far. My limit is 2% curl ''>> I have served 2 requests so far. My limit is 2>> Server received exit command, shutting down