首页 > 其他分享 >GRPC

GRPC

时间:2023-11-05 11:34:42浏览次数:35  
标签:grpc GRPC HelloReply -- go message HelloRequest

先决条件


运行实例

更新 gRPC service

// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
  // Sends another greeting
  rpc SayHelloAgain (HelloRequest) returns (HelloReply) {}
}

// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}

// The response message containing the greetings
message HelloReply {
  string message = 1;
}


重新生成 gRPC 代码

protoc --go_out=. --go_opt=paths=source_relative \
    --go-grpc_out=. --go-grpc_opt=paths=source_relative \
    helloworld/helloworld.proto


更新 server


func (s *server) SayHelloAgain(ctx context.Context, in *pb.HelloRequest) (*pb.HelloReply, error) {
	return &pb.HelloReply{Message: "Hello again " + in.GetName()}, nil
}


更新 client

	r, err = c.SayHelloAgain(ctx, &pb.HelloRequest{Name: *name})
	if err != nil {
		log.Fatalf("could not greet: %v", err)
	}
	log.Printf("Greeting: %s", r.GetMessage())


标签:grpc,GRPC,HelloReply,--,go,message,HelloRequest
From: https://blog.51cto.com/u_12225199/8191411

相关文章

  • API - 几种API接口模式 - RESTful、WebSocket、GraphQL、gRPC、Webhook
    总结TODO.....当思考使用哪种API接口时,你将会面临一个重要的决策。RESTful、GraphQL、gRPC、WebSocket和Webhook是当前流行的几种API接口模式。在本文中,我们将介绍这些接口的特点、用途和比较,帮助你选择最适合你应用程序需求的接口。引言随着现代应用程序的复杂性和用户期望的......
  • grpc
    UseHTTP2.0:CompatiblewithHTTP1.X,retainingthehighperformanceofTCPprotobuf是协议grpc无缝集成了protobuf......
  • LLM探索:为ChatGLM2的gRPC后端增加连续对话功能
    前言之前我做AIHub的时候通过gRPC的方式接入了ChatGLM等开源大模型,对于大模型这块我搞了个StarAI框架,相当于简化版的langchain,可以比较方便的把各种大模型和相关配套组合在一起使用。主要思路还是用的OpenAI接口的那套,降低学习成本,但之前为了快速开发,就只搞了个简单......
  • 在 kubernetes 环境中实现 gRPC 负载均衡
    前言前段时间写过一篇gRPC的入门文章,在最后还留了一个坑没有填:也就是gRPC的负载均衡问题,因为当时的业务请求量不算大,再加上公司没有对Istio这类服务网格比较熟悉的大牛,所以我们也就一直拖着没有解决,依然只是使用了kubernetes的service进行负载,好在也没有出什么问题......
  • .NET CORE 之 gRPC使用
    gRPC简单介绍gRPC是一种与语言无关的高性能远程过程调用(RPC)框架(google开源的rpc框架)。gRPC默认使用protocolbuffers,这是Google开源的一套成熟的结构数据序列化机制(也可以使用其他数据格式如JSON) gRPC的主要优点是: HTTP2传输现代高性能轻量级RPC框架。协定......
  • grpc服务报错: http2 frame too large
    报错如下:14xxBadRequesterrorreadingserverpreface:http2:frametoolarge其中4xx为客户端报错中的一个具体数字。比如:404/415,仅以报错举例,且出现报错码不固定。但是errormsg的核心内容不变:frametoolarge...这个是因为客户端在没有TLS加密的情况下发送HTT......
  • 浏览器可直接访问 Dubbo、gRPC 后端微服务,Dubbo-js 首个alpha 版本来了!
    作者:蔡建怿基于Dubbo3定义的Triple协议,你可以轻松编写浏览器、gRPC兼容的RPC服务,并让这些服务同时运行在HTTP/1和HTTP/2上。DubboTypeScriptSDK[1]支持使用IDL或编程语言特有的方式定义服务,并提供一套轻量的APl来发布或调用这些服务。Dubbo-js已于9月份......
  • golang之gRPC
    相关链接:grpc:https://grpc.io/docs/languages/go/quickstart/ protobuf:https://protobuf.dev/programming-guides/proto3/ protobuf语法: 示例:syntax="proto3";//声明请求参数messageSearchRequest{stringquery=1;int32page=2;int32pag......
  • 使用jprofiler 14 查看dremio 的grpc 调用
    我以前也写过使用就profiler分析dremio调用链的,jprofiler14支持独立的grpc功能节点了,可以方便我们了解dremio内部grpc的调用机制环境配置这个就比较简单了,具体可以参考我以前写的文章(包含了基于agent模式以及attach模式的)参考效果  参考资料https://www.ej-tec......
  • gin上使用Grpc入门
    要在Go中使用基于Gin的gRPC,你需要执行以下步骤:安装gRPC:使用以下命令安装gRPC:goget-ugoogle.golang.org/grpcshell复制代码安装protoc-gen-go:使用以下命令安装protoc-gen-go插件,它用于将protocolbuffer文件生成Go代码:goget-ugithub.com/golang/protobuf/protoc......