草庐IT

RPC和GRPC

全部标签

有了HTTP,为啥还要用RPC

既然有HTTP请求,为什么还要用RPC调用?一直以来都没有深究过RPC和HTTP的区别,不都是写一个服务然后在客户端调用么?HTTP和RPC最本质的区别,就是RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的。我们都知道HTTP协议是在传输层

有了HTTP,为啥还要用RPC

既然有HTTP请求,为什么还要用RPC调用?一直以来都没有深究过RPC和HTTP的区别,不都是写一个服务然后在客户端调用么?HTTP和RPC最本质的区别,就是RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的。我们都知道HTTP协议是在传输层

API开发,gRPC还是GraphQL?

​译者|崔皓审校|云昭gRPC是由Google开发的一个高性能、通用的开源RPC框架,主要面向移动应用开发且基于HTTP/2协议标准而设计,同时支持大多数流行的编程语言。GraphQL既是一种用于API的查询语言,且GraphQL对API中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让API更容易地随着时间推移而演进,还能用于构建强大的开发者工具。两者看起来并用途不相同,但其实在通信场景中很多开发者面临如何选择的问题。本文笔者带领大家从实用的角度去一一剖析gRPC与GraphQL的取舍之道!一、开篇本文主要介绍使用gRPC和GraphQL的时机

API开发,gRPC还是GraphQL?

​译者|崔皓审校|云昭gRPC是由Google开发的一个高性能、通用的开源RPC框架,主要面向移动应用开发且基于HTTP/2协议标准而设计,同时支持大多数流行的编程语言。GraphQL既是一种用于API的查询语言,且GraphQL对API中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让API更容易地随着时间推移而演进,还能用于构建强大的开发者工具。两者看起来并用途不相同,但其实在通信场景中很多开发者面临如何选择的问题。本文笔者带领大家从实用的角度去一一剖析gRPC与GraphQL的取舍之道!一、开篇本文主要介绍使用gRPC和GraphQL的时机

gRPC中的Metadata是什么?有什么作用?

gRPC中的metadata是什么?gRPC中的Metadata类似于HTTPHeader的概念,用于描述数据和消息的数据信息,可以理解为一个键值对集合,用于在gRPC客户端和服务端之间传递元数据信息,提供一种在消息中传递数据和追加关键信息的机制。Metadata主要有两个作用:提供RPC调用的元数据信息,例如用于链路追踪的traceId、调用时间、应用版本等等。控制gRPC消息的格式,例如是否压缩或是否加密。在gRPC中,元数据可以在客户端和服务器之间进行交换。客户端可以在发送请求时,通过添加元数据,向服务器传递特定的信息,例如授权令牌、用户标识、链路追踪ID等。服务器可以使用这些元数据来进

gRPC中的Metadata是什么?有什么作用?

gRPC中的metadata是什么?gRPC中的Metadata类似于HTTPHeader的概念,用于描述数据和消息的数据信息,可以理解为一个键值对集合,用于在gRPC客户端和服务端之间传递元数据信息,提供一种在消息中传递数据和追加关键信息的机制。Metadata主要有两个作用:提供RPC调用的元数据信息,例如用于链路追踪的traceId、调用时间、应用版本等等。控制gRPC消息的格式,例如是否压缩或是否加密。在gRPC中,元数据可以在客户端和服务器之间进行交换。客户端可以在发送请求时,通过添加元数据,向服务器传递特定的信息,例如授权令牌、用户标识、链路追踪ID等。服务器可以使用这些元数据来进

.NET7 gRPC JSON转码+OpenAPI

gRPCJSON转码gRPCJSON转码允许浏览器应用调用gRPC服务,就像它们是使用JSON的RESTfulAPI一样。浏览器应用不需要生成gRPC客户端或了解gRPC的任何信息。通过使用HTTP元数据注释.proto文件,可从gRPC服务自动创建RESTfulAPI。使应用可以同时支持gRPC和JSONWebAPI,而无需重复为两者生成单独的服务。OpenAPI与gRPCServerOpenAPI(以前称为Swagger)是一个与语言无关的规范,用于描述API。gRPCJSON转码支持从转码RESTful的API生成OpenAPI。实现Server端通过VS新增GRPCServer,新增n

.NET7 gRPC JSON转码+OpenAPI

gRPCJSON转码gRPCJSON转码允许浏览器应用调用gRPC服务,就像它们是使用JSON的RESTfulAPI一样。浏览器应用不需要生成gRPC客户端或了解gRPC的任何信息。通过使用HTTP元数据注释.proto文件,可从gRPC服务自动创建RESTfulAPI。使应用可以同时支持gRPC和JSONWebAPI,而无需重复为两者生成单独的服务。OpenAPI与gRPCServerOpenAPI(以前称为Swagger)是一个与语言无关的规范,用于描述API。gRPCJSON转码支持从转码RESTful的API生成OpenAPI。实现Server端通过VS新增GRPCServer,新增n

.NET 反向代理 YARP 代理 GRPC

  前面的YARP文档中,介绍了怎么去代理http,和如何根据域名转发,而在现在微服务的应用是越来越来多了,服务间的调用依靠http越来越不现实了,因为http多次握手的耗时越发的影响应用的响应时间;grpc的出现,为解决这个问题提供了绝佳的解决方案,那grpc是什么呢,我从网上摘抄一部分: 什么是GRPC简介  gRPC是一个高性能、开源和通用的RPC框架,面向移动和HTTP/2设计。目前提供C#、Java和Go语言版本,分别是:grpc,grpc-java,grpc-go.其中C版本支持C,C++,Node.js,Python,Ruby,Objective-C,PHP和C#支持.gRPC基

.NET 反向代理 YARP 代理 GRPC

  前面的YARP文档中,介绍了怎么去代理http,和如何根据域名转发,而在现在微服务的应用是越来越来多了,服务间的调用依靠http越来越不现实了,因为http多次握手的耗时越发的影响应用的响应时间;grpc的出现,为解决这个问题提供了绝佳的解决方案,那grpc是什么呢,我从网上摘抄一部分: 什么是GRPC简介  gRPC是一个高性能、开源和通用的RPC框架,面向移动和HTTP/2设计。目前提供C#、Java和Go语言版本,分别是:grpc,grpc-java,grpc-go.其中C版本支持C,C++,Node.js,Python,Ruby,Objective-C,PHP和C#支持.gRPC基