Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Branch: master
Fetching contributors…

Cannot retrieve contributors at this time

62 lines (42 sloc) 1.046 kB

marx

Allocate worker roles among a collective of workers according to their abilities.

build status

example

var marx = require('marx');

var work = { web : 3, auth : 2, logger : 1 };
var workers = { a : 2, b : 1, c : 5 };

var shares = marx(workers, work);
console.dir(shares);

output:

{ c: { web: 2, auth: 1 },
  b: { auth: 1 },
  a: { logger: 1, web: 1 } }

methods

var marx = require('marx')

marx(workers, work)

Take an object mapping worker names to role capacity and an object mapping work names to a number of instances.

Return an object mapping worker names to objects mapping how many of each type of work each worker should perform.

If the workers don't have enough capacity to do the work, the extra work will appear in an '_overflow' key in the result.

install

With npm do:

npm install marx

license

MIT

Jump to Line
Something went wrong with that request. Please try again.