golang grpc快速启动demo(example)

霹雳楊 · · 1258 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

grpc是后台服务通信最常用的rpc框架。使用grpc需要预先定义协议文件(proto),然后生成相应的接口代码才能使用。有时我们需要快速验证一些grpc的功能和特性,这时grpc的服务构建和验证就有些繁琐了。

因此,下面我将介绍如何在本地环境快速启动grpc的server和client,并能够方便地对程序及proto协议进行修改验证。

一、准备

golang版本

grpc需要保证golang版本为1.6以上

$ go version

安装grpc

$ go get -u google.golang.org/grpc

安装grpc protoc生成工具

点击https://github.com/google/protobuf/releases,选择合适的版本protocol buffer版本

  • 解压zip包
  • 将zip包下的bin目录添加进PATH

安装protoc的golang插件

$ go get -u github.com/golang/protobuf/protoc-gen-go

golang插件安装后默认会放到$GOPATH/bin目录下,将插件路径添加进PATH,如下:

$ export PATH=$PATH:$GOPATH/bin

二、启动demo

下载demo

在步骤一中我们通过 go get -u google.golang.org/grpc 下载的文件中已经包含了demo,对应目录为$GOPATH/src/google.golang.org/grpc/examples

构建demo

改变工作目录

$ cd $GOPATH/src/google.golang.org/grpc/examples/helloworld

该helloworld demo已经包含了protoc协议文件.proto以及预先生成的.pb.go接口文件,我们可以直接编译该demo。

编译并启动server端

$ go run greeter_server/main.go

打开一个新的terminal,启动客户端

$ go run greeter_client/main.go

如果一切顺利,可以看到如下输出

Greeting: Hello world

三、修改demo

修改proto接口

编辑helloworld/helloworld.proto文件(关于grpc的接口文件说明见此链接

执行如下命令重新生成.pb.go文件覆盖原有的.pb.go接口文件

$ protoc -I helloworld/ helloworld/helloworld.proto --go_out=plugins=grpc:helloworld

修改server和client

直接编辑greeter_server/main.go或greeter_client/main.go即可


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:霹雳楊

查看原文:golang grpc快速启动demo(example)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1258 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传