package main import ( "log" "github.com/nsqio/go-nsq" ) type myMessageHandler struct{} func processMessage(b []byte) error { log.Println(string(b)) return nil } // HandleMessage implements the Handler interface. func (h *myMessageHandler) HandleMessage(m *nsq.Message) error { log.Println("test") if len(m.Body) == 0 { return nil } err := processMessage(m.Body) return err } func main() { config := nsq.NewConfig() // // .... // producer, err := nsq.NewProducer("ekb-app01.myway.local:4150", config) // if err != nil { // log.Fatal(err) // } // if producer.Publish("grpc", []byte("Случилась какая-то ботва 1")); err != nil { // log.Fatal(err) // } // producer.Stop() // ... consumer, err := nsq.NewConsumer("grpc", "grpc", config) if err != nil { log.Fatal(err) } consumer.AddHandler(&myMessageHandler{}) if consumer.ConnectToNSQLookupd("ekb-app01.myway.local:4161"); err != nil { log.Fatal(err) } //consumer.Stop() }