Skip to content

msmedes/scale

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

Scale

Go implementation of Chord - DHT protocol

Local Development

Workflow

  • make trace - start the trace server (defaults to port 5000
  • make serve - start the first node (defaults to port 3000
  • PORT=<port number> JOIN=<node to join ip> WEB=<port number> make serve - for subsequent nodes. This could be automated but is a bit tricky with the bootstrapping process in the nodes.

Internode communication is on port 3000 by default. GraphQL API is on port 8000 by default. Useful GraphQL queries:

query {
  get(key: "hello") {
    value
    trace {
      addr
      functionCall
      duration
    }
  }
  metadata {
    node {
      id
      addr
      fingerTable
      predecessor {
        id
        addr
      }
      successor {
        id
        addr
      }
    }
  }
}

mutation {
  set(key: "hello", value: "world") {
    count
    trace {
      addr
      functionCall
      duration
    }
  }
}

Resources

About

An implemention of chord

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages