golang——rpc
文章平均质量分 88
golang——rpc
两片空白
这个作者很懒,什么都没留下…
展开
-
Golang——gRPC gateway网关
etcd3 API全面升级为gRPC后,同时要提供REST API服务,维护两个版本的服务显然不大合理,所以gRPC-gateway诞生了。通过protobuf的自定义option实现了一个网关。服务端同时开启gRPC和HTTP服务,HTTP服务接收客户端请求后转换为grpc请求数据,获取响应后转为json数据放回给客户端。安装gRPC-gateway:gogetu githubcomgrpcecosystemgrpcgatewayprotocgengrpcgateway。原创 2024-06-15 17:57:49 · 1244 阅读 · 2 评论 -
Golang——gRPC内置Trace
gRPC内置了客户端和服务端的请求追踪,基于golang.org/x/net/trace包实现,默认是开启状态,可以查看事件和请求日志,对于基本的请求状态查看调试也是很有帮助的,客户端与服务端基本一致,这里以服务端开启trace server为例,代码如下。原创 2024-06-13 10:00:00 · 234 阅读 · 0 评论 -
Golang——gRPC认证和拦截器
TLS(Transport Layer Security,安全传输层),TLS是建立在传输层TCP协议之上的协议,服务于应用层,它的前身是SSL(Secure Socket Layer,安全套接字层),它实现了将应用层的报文进行加密后再交由TCP进行传输的功能。Token认证是一种基于Token的身份验证方法,用于在客户端和服务器之间进行身份验证。主要概念Token的含义:Token(令牌)是服务端生成的一串字符串,作为客户端进行请求的一个标识。Token的组成。原创 2024-06-11 10:59:30 · 1048 阅读 · 0 评论 -
Golang——gRPC与ProtoBuf介绍
微服务架构中,由于每个服务对应的代码库是独立运行的,无法直接调用,彼此之间的通信就是一个大问题。gRPC可以实现微服务,将大的项目拆分为多个小且独立的业务模块,也就是服务,各个服务将使用高效的protobuf协议进行RPC调用,gRPC默认使用protocol buffers,这个是google开源的一套成熟的结构数据序列化机制,当然也可以使用其它数据结构如JSON。可以用proto files创建gRPC服务,用message类型来定义方法参数和返回类型。原创 2024-06-06 17:32:19 · 1190 阅读 · 0 评论 -
Golang——RPC
要实现的一个功能为,接收到客户端发过来需要调用的函数和参数,实现对应函数的调用,将结果返回。我理解的微服务(RPC),将项目中必要的功能注册成一个服务,客户端可以直接调用。另外,net/rpc/jsonrpc库通过json格式编解码,支持跨语言调用。例题:golang实现RPC程序,实现求矩形面积和周长。连接rpc服务,发送请求调用方法。注册服务,监听请求,处理请求。原创 2024-06-04 15:01:51 · 804 阅读 · 0 评论