1
0
mirror of https://github.com/go-micro/go-micro.git synced 2025-05-25 21:53:14 +02:00
Johnson C f96b48dad9
1. use default memory registry in grpc plugins (#2317)
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
2021-10-22 22:30:28 +08:00
..
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-13 13:31:23 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2021-10-12 12:55:53 +01:00
2020-12-29 15:49:26 +00:00

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