golang grpc简单使用


gRPC是一个高性能、通用的开源RPC框架,基于ProtoBuf(Protocol Buffers)序列化协议开发,且支持众多开发语言。

1、相关包安装

1)protobuf

在下面的链接下载之后源码安装,
https://github.com/google/protobuf
安装过程也比较简单:

就可以安装好。

2)安装protoc的golang插件

设置好gopath之后直接使用下面的命令即可。
我的gopath设置为:/home/helight/gopath/
go get -u github.com/golang/protobuf/protoc-gen-go #golang 插件

3)安装grpc框架

go get -u google.golang.org/grpc
google.golang.org/grpc 对应的代码地址在: https://github.com/grpc/grpc-go
由于墙的原因,我们可能需要使用这个命令
go get -u github.com/grpc/grpc-go

4)其它需要依赖的库

golang.org/x/text 对应的代码地址在: https://github.com/golang/text
golang.org/x/net/context 对应的代码地址在: https://github.com/golang/net
google.golang.org/genproto 对应的代码地址在:github.com/google/go-genproto

以上应该都可以用go get -u 来获取,也是因为墙的原因,我们需要是github的源。

2.定义grpc.proto文件

然后编译
protoc –go_out=plugins=grpc:. grpc.proto

### 3.server端代码

4.client端代码

5.编译

6.特别注意

1.库文件保存

因为golang.org站点国内被墙,那么相关包下载只能到github上下载,但是下载之后要把它的路径在拷贝成golang.org的路径才可以使用。

2.客户端链接

特别要注意,client.go 下 dial 时,要指定 conn, err := grpc.Dial(address, grpc.WithInsecure()),负责会报异常:
did not connect: grpc: no transport security set (use grpc.WithInsecure() explicitly or set credentials)

感觉有意思?来鼓励一下!
打赏黑光技术

One thought on “golang grpc简单使用

Leave a Reply

Your email address will not be published. Required fields are marked *