go语言的grpc安装记录

grpc安装

是一种rpc服务,包含服务端和客户端,能够更容易地创建分布式应用和服务。

默认使用protocol buffers这种结构序列化机制(当然也可以使用json)。

安装grpc

protoc是protocol buffer的编译器,根据.proto来生成创建应用所需的特定客户端和服务端的代码(PHP仅支持创建客户端代码)。生成的代码同时包括客户端的存根和服务端要实现的抽象接口,均包含Greeter所定义的方法。

1.安装grpc-go

最简单的方式是: go get -u google.golang.org/grpc

然而我没有弄,就用如下的方式:

git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc

2.安装Protocol Buffers V3

请根据自己的操作系统下载相应的包,下载地址:https://github.com/google/protobuf/releases

  • 1.解压文件
  • 2.加入环境变量PATH
  • 3.安装protoc的go插件: go get -u github.com/golang/protobuf/protoc-gen-go
  • 4.加入到环境变量: export PATH=$PATH:$GOPATH/bin

备注:
我在第3步导入包时提示路径不对,查询后是因为我修改了$GOROOT,unset GOROOT,就好了

运行demo

客户端和服务端都是go,demo地址是https://github.com/grpc/grpc-go/tree/master/examples

工作区的目录如下:

- bin
- pkg
- src
    - github.com
        - golang
            - protobuf  
    - google.golang.org
        - grpc  

在grpc/examples目录下,有greeter_server和greeter_client目录,go run 运行即可看到效果。

go run greeter_server/main.go # 加 & 放在后台运行

go run greeter_client/main.go # 如果顺利的话,会在服务端那边看到打印的world 

参考地址:

https://grpc.io/docs/quickstart/go/

https://github.com/grpc/grpc-go/tree/master/examples

你可能感兴趣的:(go语言的grpc安装记录)