Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

marx

0.0.2 • Public • Published

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

Keywords

none

install

npm i marx

Downloadsweekly downloads

6

version

0.0.2

license

none

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability