随笔分类 -  grpc

摘要:http网关 etcd3 API全面升级为gRPC后,同时要提供REST API服务,维护两个版本的服务显然不太合理,所以grpc-gateway诞生了。通过protobuf的自定义option实现了一个网关,服务端同时开启grpc和http服务,http服务接收到客户请求后转换为grpc请求数据, 阅读全文
posted @ 2022-09-27 13:42 专职 阅读(535) 评论(0) 推荐(0) 编辑
摘要:interceptor拦截器 grpc服务端和客户端都提供了interceptor功能,功能类似middleware,很适合在这里处理验证、日志等流程。 在自定义Token认证的示例中,认证信息是由每个服务中的方法处理并认证的,如果有大量的接口方法,这种姿势就太不优雅了,每个接口实现都要先处理认证信 阅读全文
posted @ 2022-09-26 11:31 专职 阅读(141) 评论(0) 推荐(0) 编辑
摘要:认证 grpc默认内置了两种认证方式 SSL/TLS认证方式 基于Token的认证方式 同时,gRPC提供了接口用于扩展自定义认证方式 TLS认证示例-客户端、服务端双向认证 详细实现文档 Token认证示例 再进一步,继续扩展hello-tls项目,实现TLS + Token认证机制 目录结构: 阅读全文
posted @ 2022-09-23 17:36 专职 阅读(142) 评论(0) 推荐(0) 编辑
摘要:gRPC的基本使用非常简单,看完这部分的第一个示例就可以直接用了。但是在实际环境中,我们不会仅仅满足于能用,而是要更好的使用。一个完整的服务包括:授权认证、数据追踪、负载均衡...,我们从一个简单的项目开始,说明gRPC的基本使用姿势,然后一点点细化扩展,逐步深入完善,打造一个完整的RPC服务。 H 阅读全文
posted @ 2022-09-23 15:22 专职 阅读(78) 评论(0) 推荐(0) 编辑
摘要:目录 安装 第一步安装protoc编译器: linux下载地址 windows64下载地址 安装protoc-gen-go和protoc-gen-go-grpc两个插件 go get google.golang.org/protobuf go get google.golang.org/grpc g 阅读全文
posted @ 2022-09-23 14:39 专职 阅读(261) 评论(0) 推荐(0) 编辑
摘要:grpc是一个高性能、通用的开源rpc框架,其由google主要面向移动应用开发并基于http/2标准协议而设计,基于Protobuf(protocol buffers)序列化协议开发,且支持众多开发语言。 gRPC提供了一种简单的方法来精确地定义服务和为iOS、Android和后台支持服务自动生成 阅读全文
posted @ 2022-09-23 10:57 专职 阅读(151) 评论(0) 推荐(0) 编辑
摘要:repeated使用返回商品数组 repeated是一个修饰符,返回字段可以重复任意多次(包括0次),可以认为是一个数组(切片) proto文件定义 syntax = "proto3"; // 使用的proto 3的版本 package services; // 生成go文件的包名 option g 阅读全文
posted @ 2022-05-15 19:22 专职 阅读(499) 评论(0) 推荐(0) 编辑
摘要:创建proto中间文件 protobuf(protocol buffer)特点 性能高、压缩好、传输快、维护方便,一些第三方rpc库都会支持protobuf 下载protobuf go get google.golang.org/protobuf 注意:如果先下载grpc会默认下载protobuf 阅读全文
posted @ 2022-05-08 14:38 专职 阅读(215) 评论(0) 推荐(0) 编辑
摘要:openssl下载网址 http://slproweb.com/products/Win32OpenSSL.html 生成根证书/私钥、服务端证书/私钥、客户端证书/私钥 创建一个CA私钥(根证书) openssl genrsa -out ca.key 4096 创建一个conf 用来生成csr(请 阅读全文
posted @ 2022-05-05 21:58 专职 阅读(495) 评论(0) 推荐(0) 编辑
摘要:func HandleGrpcErrorToHttp(err error, c *gin.Context) { // 将grpc的code转换成http的状态码 if err != nil { if e, ok := status.FromError(err); ok { switch e.Code 阅读全文
posted @ 2022-02-20 14:16 专职 阅读(454) 评论(0) 推荐(0) 编辑
摘要:python中grpc配置asyncio使用 安装grpclib pip3 install grpclib protoc编译.proto文件,生成源码文件 python -m grpc_tools.protoc -I. --python_out=. --grpclib_python_out=. he 阅读全文
posted @ 2022-01-19 21:06 专职 阅读(1043) 评论(0) 推荐(0) 编辑
摘要:grpc无缝接入的数据序列化反序列化协议就是protobuf,所以先讲解一下protobuf protobuf(protocol buffer)的优点和缺点 python下体验protobuf 安装 python -m pip install grpcio # 安装grpc python -m pi 阅读全文
posted @ 2021-12-26 16:00 专职 阅读(153) 评论(0) 推荐(0) 编辑
摘要:## grpc简介 * gRPC由google开发,是一款语言中立、平台中立、开源的远程过程调用系统 * gRPC客户端和服务端可以在多种环境中运行和交互,例如用java写一个服务端,可以用go语言写客户端调用 ## grpc和protobuf介绍 * 微服务架构中,由于每个服务对应的代码库是独立运 阅读全文
posted @ 2021-12-22 17:47 专职 阅读(759) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示