用Golang创建一个简单的gRPC客户端和服务器应用程序

289 阅读1分钟

在这个例子中,我们将创建一个简单的gRPC客户端和服务器应用程序。简单地说,客户端发送一个请求并从服务器接收一个响应。我不打算详述什么是gRPC和proto文件,但在底部添加了一些链接。

有两件重要的事情。第一件事是客户端和服务器应用程序共享同一个protobuf文件。第二个是,如果你更新proto文件,你必须重新编译以反映其*.pb.go 文件的变化。

前提条件

启动go模块

go mod init github.com/YOU/bank

安装gRPC

go get -u google.golang.org/grpc

安装protobuf

# MacOS

安装protoc-gen-go

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

结构

当你构建一个gRPC应用程序时,你首先要创建一个*.proto 文件并进行编译,然后开始开发你的应用程序。

├── Makefile

文件

制作文件

.PHONY: compile

credit.proto

syntax = "proto3";

credit.pb.go

我不在这里添加内容,因为它是通过上面的命令生成的。

client/main.go

package main

server/main.go

package main

测试

$ make server
$ make client

当你运行上面的客户端代码时,服务器也会输出以下信息。

2020/04/04 18:07:42 Request: 1990.01

参考资料