mirror of
https://github.com/go-micro/go-micro.git
synced 2025-05-25 21:53:14 +02:00
2. try fixing grpc plugin failed to get issue use v4.0.0-v4.0.0-00010101000000-000000000000 instead of specific version 3. kafka panic on disconnect panic: runtime error: invalid memory address or nil pointer dereference [signal 0xc0000005 code=0x0 addr=0x18 pc=0x1266c50] goroutine 31 [running]: github.com/asim/go-micro/plugins/broker/kafka/v3.(*kBroker).Disconnect(0xc0002400c0) C:/Workshop/Go/pkg/mod/github.com/asim/go-micro/plugins/broker/kafka/v3@v3.7.0/kafka.go:130 +0xd0 github.com/asim/go-micro/plugins/server/grpc/v3.(*grpcServer).Start.func2() C:/Workshop/Go/pkg/mod/github.com/asim/go-micro/plugins/server/grpc/v3@v3.0.0-20210712061837-0532fd9de8ae/grpc.go:998 +0xc8d created by github.com/asim/go-micro/plugins/server/grpc/v3.(*grpcServer).Start C:/Workshop/Go/pkg/mod/github.com/asim/go-micro/plugins/server/grpc/v3@v3.0.0-20210712061837-0532fd9de8ae/grpc.go:917 +0xcaf exit status 2
GRPC Server
The grpc server is a micro.Server compatible server.
Overview
The server makes use of the google.golang.org/grpc framework for the underlying server but continues to use micro handler signatures and protoc-gen-micro generated code.
Usage
Specify the server to your micro service
import (
"go-micro.dev/v4"
"github.com/asim/go-micro/plugins/server/grpc/v4"
)
func main() {
service := micro.NewService(
// This needs to be first as it replaces the underlying server
// which causes any configuration set before it
// to be discarded
micro.Server(grpc.NewServer()),
micro.Name("greeter"),
)
}
NOTE: Setting the gRPC server and/or client causes the underlying the server/client to be replaced which causes any previous configuration set on that server/client to be discarded. It is therefore recommended to set gRPC server/client before any other configuration