github.com/micro/go-micro/examples@v0.0.0-20210105173217-bf4ab679e18b/greeter/srv/main.go (about) 1 // Package main 2 package main 3 4 import ( 5 "context" 6 "time" 7 8 hello "github.com/micro/go-micro/examples/greeter/srv/proto/hello" 9 "github.com/micro/go-micro/v2" 10 "github.com/micro/go-micro/v2/util/log" 11 "google.golang.org/grpc" 12 ) 13 14 type Say struct{} 15 16 func (s *Say) Hello(ctx context.Context, req *hello.Request, rsp *hello.Response) error { 17 log.Log("Received Say.Hello request") 18 rsp.Msg = "Hello " + req.Name 19 return nil 20 } 21 22 func main() { 23 go func() { 24 for { 25 grpc.DialContext(context.TODO(), "127.0.0.1:9091") 26 time.Sleep(time.Second) 27 } 28 }() 29 30 service := micro.NewService( 31 micro.Name("go.micro.srv.greeter"), 32 ) 33 34 // optionally setup command line usage 35 service.Init() 36 37 // Register Handlers 38 hello.RegisterSayHandler(service.Server(), new(Say)) 39 40 // Run server 41 if err := service.Run(); err != nil { 42 log.Fatal(err) 43 } 44 }