用Golang创建一个服务器端的gRPC流

130 阅读1分钟

在这个例子中,我们将在Golang gRPC应用程序中创建一个服务器端的流媒体例子。这就像一对多的关系。客户端发送一个请求,服务器以零或多的方式响应。客户端进行流式传输,直到没有剩余的内容。一旦全部读完,它就退出了。欲了解更多信息,请阅读文档

我们的例子是一个简单的例子。客户端发送一个包含账户ID的请求,以便从服务器上逐一获取与之相关的所有交易。

Proto库

pkg/protobuf/bank/transaction.proto

syntax = "proto3";

制作文件

.PHONY: compile

客户端

cmd/client/main.go

package main

internal/transaction/client.go

package transaction

服务器

cmd/server/main.go

package main

internal/transaction/transaction.go

package transaction

internal/transaction/server.go

package transaction

测试

# Run server
# Run client

测试结果

# Server
# Client