micro/service/grpc/README.md

29 lines
1.3 KiB
Markdown
Raw Normal View History

2019-06-03 19:16:43 +01:00
# gRPC Service
2019-06-03 18:44:43 +01:00
2019-06-03 19:16:43 +01:00
A simplified experience for building gRPC services.
2019-06-03 18:44:43 +01:00
## Overview
2019-06-03 19:16:43 +01:00
The **gRPC service** makes use of [go-micro](https://github.com/micro/go-micro) plugins to create a simpler framework for gRPC development.
2019-06-03 18:44:43 +01:00
It interoperates with standard gRPC services seamlessly, including the [grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway).
2019-06-03 19:16:43 +01:00
The grpc service uses the go-micro broker, client and server plugins which make use of
2019-06-03 18:44:43 +01:00
[github.com/grpc/grpc-go](https://github.com/grpc/grpc-go) internally.
This means we ignore the go-micro codec and transport but provide a native grpc experience.
<img src="https://micro.mu/docs/images/go-grpc.svg" />
## Features
- **Service Discovery** - We make use of go-micro's registry and selector interfaces to provide pluggable discovery
and client side load balancing. There's no need to dial connections, we'll do everything beneath the covers for you.
2019-06-03 19:16:43 +01:00
- **PubSub Messaging** - Where gRPC only provides you synchronous communication, the **gRPC service** uses the go-micro broker
2019-06-03 18:44:43 +01:00
to provide asynchronous messaging while using the gRPC protocol.
- **Micro Ecosystem** - Make use of the existing micro ecosystem of tooling including our api gateway, web dashboard,
command line interface and much more. We're enhancing gRPC with a simplified experience using micro.
## I18n
### [中文](README_cn.md)