现在很多微服务内部的通信协议都采用rpc,性能高,安全。而grpc则是google退出的rpc plus。

protobuf是传输协议,性能高,强大。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

来一个server client的通信demo,感受一下这2个的魅力。

首先,我们要约定好接口和数据结构,起名helloworld.proto:

Go grpc 与 protobuf go 第1张

go get -u github.com/golang/protobuf/protoc-gen-go 
获取golang的protobuf生成器
然后执行命令:
protoc -I=$SRC_DIR --go_out=$DST_DIR $SRC_DIR/helloworld.proto
会生成一个 helloworld.pb.go 的文件,这个就是protobuf在go语言下的代理
然后我们编写server:

Go grpc 与 protobuf go 第2张

别忘了get google.golang.org/grpc

client:

Go grpc 与 protobuf go 第3张

把server和client分别跑起来,就能看到效果啦。

nice

 
 

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄