gRPC 越来越流行,相关的插件也很多,今天介绍的就是一个 gRPC 插件。 gRPC-Gateway 是一个插件,它为 gRPC 服务生成反向代理服务器,将 Restful/JSON 转换为 gRPC,反之亦然。 换句话说,gRPC-Gateway 将在你的 gRPC 服务上创建一个层,该层将充当客户端的 Restful/JSON 服务。gRPC- ......
26
0
0
2023-08-22
背景gRPC是Google开始的一个RPC服务框架, 是英文全名为Google Remote Procedure Call的简称。 广泛的应用在有RPC场景的业务系统中,一些架构中将gRPC请求都经过一个gRPC服务代理节点或网关,进行服务的权限限制,限流,服务调用监控,增加请求统计等等诸多功能。 如下以Golang和gRPC为例,简要分析gRPC的转发原 ......
27
0
0
2023-08-19
golang使用grpc的快速入门教程创建工程mkdir grpc_test cd g RPC _test go mod init //使用github的grpc替换gp的grpc go mod edit -replace=google.golang.org/grpc=github.com/grpc/grpc-go@latest go mod ed ......
29
0
0
2023-08-16
目录各种配置文件编写proto文件并编译编写简单的demo代码结语下面介绍的这个版本搭配是我研究好久好久才跑通的,这在我的电脑上是一组可行的配置,如果你使用了同样的配置跑不通,那可能是环境中某一部分还是有不同的地方,需要你自己再去找一下解决问题的办法,那么话不多说,直接上配置吧。各种配置文件首先我们需要设置三个配置文件,如下图所示我们先来看一下项目设置set ......
118
0
0
2023-05-05
目录gRPC优势工作方式使用场景Protobuf语法基本规范限定修饰符数据类型gRPC整合SpringCloud & Nacos核心依赖项目结构API服务端客户端测试gRPCgRPC是由 google开发的一个高性能、通用的开源RPC框架,主要面向移动应用开发且基于HTTP/2协议标准而设计,同时支持大多数流行的编程语言。它是一种与语言、平台无关、可 ......
115
0
0
2023-04-19
目录1. grpc开源包的安装2. grpc的使用之传送消息3. grpc的使用之数据传输大小配置4. grpc的使用之超时配置5. grpc之大文件之流stream传输6. grpc之大文件之流async异步传输1. grpc开源包的安装# conda $ conda create -n grpc_env python=3.9 # install ......
89
0
0
2023-04-17
目录引言环境搭建修改项目的setting.gradle信息修改项目的build.gralde信息修改gradle版本号修改模块的build.gradle信息在main目录下创建proto目录测试一下GRPC的四种通信模式简单一元模式客户端流模式服务端流模式双向流模式简单的GRPC客户端服务端程序设计引言Android作为一个开发平台,本身是使用java进行封 ......
108
0
0
2023-04-05
目录1.什么是gRPC1.基本介绍2.proto文件3.上手实践2.gRPC流1.服务端流、客户端流、双向流2.NetCore Web项目作为客户端3.gRPC AOP拦截1.什么是gRPC1.基本介绍gRPC 一开始由 google 开发,是一款语言中立、平台中立、开源的远程过程调用(RPC)系统,所以叫g(google)RPC。支持主流开发语言(C, C ......
186
0
0
2023-02-09
这篇文章将重点介绍在微服务中gRPC的使用:开发流程在微服务分布式架构中开发gRPC其实非常简单,不要畏难畏烦,没有什么心智负担的。开发gRPC的流程和宋丹丹把大象装冰箱是一样的:把冰箱门打开把大象装进去把冰箱门关上开发gRPC的流程;写proto文件定义服务和消息使用protoc工具生成代码编写业务逻辑代码提供服务就是这么简单。下面我仍然以Go语言举例,其 ......
165
0
0
2022-11-27
RPC什么是RPCRPC的中文是“远程过程调用”,对应的英文全称是:Remote Procedure Call,可以简单理解为一个节点请求另一个节点提供的服务理解“本地过程调用”可以更好的理解“远程过程调用”知识点:RPC主要依赖于客户端与服务端建立socket链接;而HTTP REST实现通讯的代价比较高,这是RPC的一个优势体现。RPC详解看这里为什么用 ......
213
0
0
2022-11-27
前言个人网站:linzyblog.netlify.app/示例代码已经上传到github:点击跳转gRPC官方文档:点击跳转在前面的章节中,我们介绍了两种可全局认证的方法:基于 CA 的 TLS 证书认证拦截器 interceptor而在实际需求中,常常会对某些模块的 RPC 方法做特殊认证或校验,而gRPC也专门提供了这类特殊认证的接口。《通过TLS建立安 ......
173
0
0
2022-11-24
前言个人网站:linzyblog.netlify.app/示例代码已经上传到github:点击跳转gRPC官方文档:点击跳转一、拦截器概述1、什么是拦截器?在常规的 HTTP 服务器中,我们可以设置有一个中间件将我们的处理程序包装在服务器上。此中间件可用于在实际提供正确内容之前执行服务器想要执行的任何操作,它可以是身份验证或日志记录或任​​何东西。中间件:中 ......
273
0
0
2022-11-24
前言个人网站:linzyblog.netlify.app/示例代码已经上传到github:点击跳转gRPC官方文档:点击跳转一、明文传输先前的例子中 gRPC Client/Server 都是明文传输的,在明文通讯的情况下,你的请求就是裸奔的,有可能被第三方恶意篡改或者伪造为“非法”的数据。我们抓个包查看一下:是明文传输,后面我们开始gRPC通过 TLS 证 ......
181
0
0
2022-11-24
前言这章的内容需要安装好插件和protoc,建议阅读我的上一篇 grpc使用篇个人网站:linzyblog.netlify.app/示例代码已经上传到github:点击跳转gRPC官方文档:点击跳转一、gRPC的请求模型gRPC 有两种类型的请求模型:一元 - 直接的请求响应映射在 HTTP/2 请求响应之上。简单来说一元就是一个简单的 RPC,其中客户端使 ......
163
0
0
2022-11-24
前言个人网站:linzyblog.netlify.app/示例代码已经上传到github:点击跳转gRPC官方文档:点击跳转一、gRPC概述1、什么是gRPC?gRPC 是一个强大的开源 RPC(远程过程调用)框架,用于构建可扩展且快速的 API。它允许客户端和服务器应用程序透明地通信并开发连接的系统。gRPC框架依赖 HTTP/2、协议缓冲区和其他现代技术 ......
187
0
0
2022-11-24