0.3.0 • Published 10 years ago

consistent-hashing v0.3.0

Weekly downloads
452
License
MIT
Repository
github
Last release
10 years ago

node-consistent-hashing Build Status npm version

A pure JavaScript implementation of Consistent Hashing for Node.js.

Installation

$ npm install consistent-hashing

Usage

var ConsistentHashing = require('consistent-hashing');
var cons = new ConsistentHashing(["node1", "node2", "node3"]);

var nodes = {};
var chars = [
  'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I',
  'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
  'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'
];

chars.forEach(function(c) {
  var node = cons.getNode(c);

  if (nodes[node]) {
    nodes[node].push(c);
  } else {
    nodes[node] = [];
    nodes[node].push(c);
  }
});

console.log(nodes);

// { node3: [ 'A', 'F', 'H', 'J', 'N', 'S', 'U', 'W', 'X' ],
//   node1: [ 'B', 'C', 'E', 'G', 'L', 'M', 'Q', 'R', 'V', 'Y', 'Z' ],
//   node2: [ 'D', 'I', 'K', 'O', 'P', 'T' ] }

add nodes:

cons.addNode("node4");

remove node:

cons.removeNode("node1");

Copyright

Copyright (C) 2011-2015 Dai Akatsuka, released under the MIT License.

0.3.0

10 years ago

0.2.3

13 years ago

0.2.2

13 years ago

0.2.1

13 years ago

0.2.0

14 years ago

0.1.0

14 years ago