package main
import (
"context"
"fmt"
"github.com/micro/go-micro/v2"
_ "github.com/micro/go-plugins/broker/grpc/v2"
)
func main() {
service := micro.NewService(
micro.Name("foobar"),
)
service.Init()
fmt.Println("broker is", service.Options().Broker.String())
sub := service.Server().NewSubscriber("Cruft", func(ctx context.Context, msg *string) error {
fmt.Println("some cruft")
return nil
})
service.Server().Subscribe(sub)
service.Run()
}
go run x.go --broker=grpc
broker is grpc
2020-02-07 17:23:45 Starting [service] foobar
2020-02-07 17:23:45 Server [grpc] Listening on [::]:42509
2020-02-07 17:23:45 Broker Listening on [::]:42823
2020-02-07 17:23:45 Broker [grpc] Connected to [::]:42823
2020-02-07 17:23:45 Registry [mdns] Registering node: foobar-cfa405e9-aebf-4abd-ba20-2037a6859d10
2020-02-07 17:23:45 Subscribing to topic: Cruft