1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package main
- import (
- "log"
- "math/big"
- "os"
- "os/signal"
- "time"
- "trial/achord/models"
- chord "trial/achord"
- )
- func createNode(id string, addr string, sister *models.Node) (*chord.Node, error) {
- cnf := chord.DefaultConfig()
- cnf.Id = id
- cnf.Addr = addr
- cnf.Timeout = 10 * time.Millisecond
- cnf.MaxIdle = 100 * time.Millisecond
- n, err := chord.NewNode(cnf, sister)
- return n, err
- }
- func createID(id string) []byte {
- val := big.NewInt(0)
- val.SetString(id, 10)
- return val.Bytes()
- }
- func main() {
- h, err := createNode("1", "0.0.0.0:8001", nil)
- if err != nil {
- log.Fatalln(err)
- }
- c := make(chan os.Signal, 1)
- signal.Notify(c, os.Interrupt)
- <-time.After(10 * time.Second)
- <-c
- h.Stop()
- }
|