Skip to content
A distributed service locator, written on top of Node.js
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Dislocate - A distributed service locator

Dislocate aims to eliminate the need to configure 'where' a service is 
available on a network, and enable auto discovery of new services, and high 
performance location of these services by clients.

Dislocate is a combination of what monitoring, DNS and load balancers are meant
to do -- but maintaining those services on a large scale distributed system
is a significant toll on sysadmins.  Dislocate aims to reduce the amount of
work that sysadmins need to do to maintain properly scaling architectures on
distributed, disperse and dynamic networks.

Clients on the localhost ask Dislocate for a service, via either HTTP or a file
on disk.  Dislocate provides information about both the service, and the machine
hosting it, so that the clients can make load balancing decisions, like
using the least loaded slave SQL server.

Dislocate itself bootstraps based upon a few seed nodes, and then forms a
peer to peer network over TCP with other Dislocate nodes.  Communication
between each node is authenticated by a shared secret.

Services register themselves with their local Dislcoate instance on startup, and 
then Dislocate will advertise them to other peers.  The service can register
how Dislocate should see if its still alive, including TCP health checks
or other custom functions.

Pre-Alpha.  Lots of work to do, I've been trying to hack down the TODO file
whenever I get a chance.

I welcome help:
  IRC: pquerna on Freenode (#bloglines or other channels). 
  E-Mail: <pquerna>

You can’t perform that action at this time.