Vasiliy Tolstov
58598d0fe0
* fixes for safe convertation Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org> * fix client publish panic If broker connect returns error we dont check it status and use it later to publish message, mostly this is unexpected because broker connection failed and we cant use it. Also proposed solution have benefit - we flag connection status only when we have succeseful broker connection Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org> * api/handler/broker: fix possible broker publish panic Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org> |
||
---|---|---|
.. | ||
proto | ||
codec.go | ||
context.go | ||
error.go | ||
extractor_test.go | ||
extractor.go | ||
grpc_test.go | ||
grpc.go | ||
handler.go | ||
options.go | ||
README.md | ||
request.go | ||
response.go | ||
server.go | ||
stream.go | ||
subscriber.go | ||
util.go |
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 (
"github.com/micro/go-micro"
"github.com/micro/go-plugins/server/grpc"
)
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