srvc

Micro-services framework

npm install srvc
32 downloads in the last month

srvc

Micro-services framework for node.js

This module has the code usually used in node.js application to simplify creation of micro-services.

install

npm install srvc

use

var srvc = require('srvc');

cluster

spawns workers.

server.js:

var cluster = srvc.cluster
    , worker = require('./worker');

cluster(worker, 4, 10); // spawns 4 workers and restarts up to 10 times if they exit

worker.js:

module.exports = function() {
    var express = require('express')
        , app = express();

    app.get('/hello', function(req, res){
        res.send('Hello World');
    });

    app.listen(3000);
    console.log('worker', process.pid, 'listens on port 3000');
};

redis

creates one redis client if redis is configured and simplifies creation of more clients

config

loads configuration based on host, environment and defaults.

uses nconf.

logger

logs messages according to log level logger.js can be used in browser as is (with/without require.js).

var logger = new Logger(options);
logger.info('starting');
logger.debug('debugging');
logger.error('error');
logger.warning('!!!');
logger options
{
    colors: true, // true by default in node/development, false in browser
    level: 3,
    enabled: true,
    logPrefix: '', // (process.pid) by default in node,
    logPrefixColor: 34 // blue
}

options can be set via logger instance.

logger.level = 1; // errors and warnings

The same methods can be used with Logger class. The last created instance will be used to log, if logger was never instantiated it will be created with default options.

log level
  • 0 - errors
  • 1 - + warnings
  • 2 - + info
  • 3 - + debug
npm loves you