Skip to content

Latest commit

 

History

History
18 lines (10 loc) · 527 Bytes

README.md

File metadata and controls

18 lines (10 loc) · 527 Bytes

rendezvous-hash

an implementation of Rendezvous hashing (highest random weight)

Installation

npm install rendezvous-hash

Implementation

The shard weight is determined by Truncate-32(MD5(shardId + '\0' + key )), interpreted as a 32-bit little-endian integer. In a future (incompatible) release, this might be replaced by a simpler, faster hash.

API

select(key: String | Buffer, shards: { shardId: Shard } ) -> Shard

Selects a shard from the shards object based on the key and returns it.