Open kc1116 opened 6 years ago
Hi, I am trying to get the mtserver example to work but I can't seem to get data to be sent to the router or dealer etc. I am not sure whats wrong.
This is the mtserver with some small changes
`
// Multithreaded Hello World server. // package main import ( zmq "github.com/pebbe/zmq4" "fmt" "log" "time") func worker_routine() { context, err := zmq.NewContext() if err != nil { panic(err) } // Socket to talk to dispatcher receiver, _ := context.NewSocket(zmq.REP) defer receiver.Close() receiver.Connect("ipc:///Users/kc1116/go/src/github.com/propsproject/test/inbound.ipc") for { if msg, err := receiver.RecvBytes(0); len(msg) > 0 && err == nil { fmt.Printf("Received request: [ %s ]", msg) // Do some 'work' time.Sleep(time.Second) // Send reply back to client receiver.Send("World", 0) } else if err != nil { log.Println(err.Error()) break } } } func main() { // Socket to talk to clients clients, _ := zmq.NewSocket(zmq.ROUTER) defer clients.Close() clients.Bind("tcp://127.0.0.1:5555") // Socket to talk to workers workers, _ := zmq.NewSocket(zmq.DEALER) defer workers.Close() workers.Bind("ipc:///Users/kc1116/go/src/github.com/propsproject/test/inbound.ipc") // Launch pool of worker goroutines for thread_nbr := 0; thread_nbr < 5; thread_nbr++ { go worker_routine() } log.Println("STARTING DEALER ROUTER PROXY") // Connect work threads to client threads via a queue proxy err := zmq.Proxy(clients, workers, nil) log.Fatalln("Proxy interrupted:", err) }
and here in a separate terminal I am running this code to try and send data to the proxy
// Multithreaded Hello World server. // package main import ( zmq "github.com/pebbe/zmq4" "log" "fmt") func main() { //context, err := zmq.NewContext() //if err != nil { // panic(err) //} worker, _ := zmq.NewSocket(zmq.REQ) err := worker.Connect("tcp://localhost:5555") if err != nil { log.Fatalln("WORKER REQ interrupted:", err) } defer worker.Close() _, err = worker.SendBytes([]byte("HELLLLLO"), 0) if err != nil { fmt.Errorf("E: %s\n", err.Error()) }
Hi, I am trying to get the mtserver example to work but I can't seem to get data to be sent to the router or dealer etc. I am not sure whats wrong.
This is the mtserver with some small changes
`
`
and here in a separate terminal I am running this code to try and send data to the proxy
`
`