package micro import ( "gitea.baoapi.com/root/stu_uuos/config" "strings" "github.com/micro/go-micro/v2" "github.com/micro/go-micro/v2/registry" "github.com/micro/go-plugins/registry/consul/v2" "github.com/micro/go-plugins/registry/etcdv3/v2" "github.com/micro/go-plugins/registry/kubernetes/v2" "github.com/micro/go-plugins/registry/nats/v2" ) type MicroService struct { micro.Service ServiceName string } func InitMicro() { //NewCipherService() } func newService(clientName string) micro.Service { return micro.NewService( micro.Name(clientName), micro.Version("latest"), micro.Registry(newRegistry()), ) } func newRegistry() registry.Registry { var reg registry.Registry switch config.GetConfig().Micro.Registry.Name { case "etcd", "etcdv3": reg = etcdv3.NewRegistry( registry.Addrs(parseAddrs()...), ) case "kubernetes": reg = kubernetes.NewRegistry( registry.Addrs(parseAddrs()...), ) case "consul": reg = consul.NewRegistry( registry.Addrs(parseAddrs()...), ) case "nats": reg = nats.NewRegistry( registry.Addrs(parseAddrs()...), ) default: panic("registry unknown") } return reg } func parseAddrs() []string { return strings.Split(config.GetConfig().Micro.Registry.Addrs, ",") }