iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >.Net Core微服务rpc框架GRPC通信的方法是什么
  • 865
分享到

.Net Core微服务rpc框架GRPC通信的方法是什么

2023-06-26 04:06:19 865人浏览 独家记忆
摘要

本文小编为大家详细介绍“.net Core微服务rpc框架grpc通信的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“.Net Core微服务rpc框架GRPC通信的方法是什么”文章能帮助大家解决疑惑,下面跟

本文小编为大家详细介绍“.net Core微服务rpc框架grpc通信的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“.Net Core微服务rpc框架GRPC通信的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

什么是rpc?

rpc,全称Remote Procedure Call,通过它,你可以像调用本地方法一样调用远程服务。前端可以调用后端方法,后端也可以调用前端方法。其实这个概念并不陌生,上一篇关于WEB实时应用的文章也提到了这个概念,并实现了前后端互调的操作。

在正式开始使用grpc之前,我们还需要掌握protocol buffer的概念。

什么是grpc?

grpc来自大名鼎鼎的谷歌,孵化于CNCF基金会(Dockerk8s同样出自这个基金会)。它是一款高性能、开源、通用的rpc框架,你可以通过它来定义rpc的请求和响应。它基于Http/2,全双工通信、低延迟、高效率、支持流、可轻松的插入身份认证、负载均衡监控日志等等等等。。。关键是它还可以跨语言操作。只要server端或client端是它支持的语言编写,都可以跨语言操作。官方支持的开发语言:

.Net Core微服务rpc框架GRPC通信的方法是什么

为什么用protocol buffer?

因为grpc采用合约优先的api开发模式,默认采用protocol buffer作为接口设计语言,我们可以在proto文件里定义消息和服务。当然,作为默认选项,它自然是有优势的,主要是这些:

  • 语法简单,容易上手。

  • 可生成所有(官方称)主流开发语言的代码。

  • 二进制格式,效率高的同时也很适合大数据传输。

了解完基础以后,先上一个小demo参考一下:

syntax = "proto3";import "aaa.proto";option csharp_namespace = "gRPCApiDemo.Protos";package Demo;service Math{    rpc Add (AddRequest) returns (AddRespones);}message AddRequest{    int32 a=1;    int32 b=2;}message AddRespones{    int32 a=1;    repeated int32 b=2;  reserved 3,4 to 10;  reserved "phone";}

解读一下:

  • syntax:声明当前使用的语法

  • import:引入其他proto

  • option csharp_namespace:打包以后类的命名空间,优先级高

  • package:打包以后类的命名空间,优先级低

  • service:声明服务

  • rpc Add (AddRequest) returns (AddRespones):声明一个rpc调用,接收AddRequest消息,返回AddRespones消息。

  • message:声明消息

  • int32:数据类型,常用的还有int64、float、string、bool等,有兴趣的可以去查一下。

  • a=1:如果把a看作字段名,那么1相当于字段名的别名。

  • repeated:可重复字段。如果给b多个值,那么b差不多相当于一个int类型的数组,先后顺序会被保留。

  • reserved:保留字段,声明以后的字段名和别名都不允许再使用了。需要注意字段名和别名不能一起声明。

编译proto

proto编译的主要目的是生成代码。

首先是工具,点击这里,选出适合自己系统的插件,如图:

.Net Core微服务rpc框架GRPC通信的方法是什么

下载完以后随便找个目录解压,然后把其中的bin目录添加到环境变量里:

.Net Core微服务rpc框架GRPC通信的方法是什么

如果在控制台输入protoc可以看到一堆信息弹出来,就表示安装成功了:

.Net Core微服务rpc框架GRPC通信的方法是什么

在我们使用protoc把proto文件编译成C#文件之前,我们还需要做这些:

可以用rotoc --IPath(或--proto_path)或者直接打开控制台转到protoc安装目录。

  • 指定生成文件的类型和路径。

protoc --csharp_out=cs grpcApi.proto   //如果有多个proto文件想批量生成可以使用  *.proto

上面的cs是我新建的文件夹名(这个文件夹是建立在proto项目目录下的),grpcApi.proto是自建的proto文件,执行结果见图:

.Net Core微服务rpc框架GRPC通信的方法是什么

成功以后会在指定的目录下生成cs文件,见图:

.Net Core微服务rpc框架GRPC通信的方法是什么

生成的文件和proto文件命名一样,只不过首字母会自动大写,打开看看:

.Net Core微服务rpc框架GRPC通信的方法是什么

好吧能看懂的有限,所以看看就行了。

不过有一点千万注意:这个cs文件不要手动改,不要手动改,不要手动改!

读到这里,这篇“.Net Core微服务rpc框架GRPC通信的方法是什么”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: .Net Core微服务rpc框架GRPC通信的方法是什么

本文链接: https://www.lsjlt.com/news/306888.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • .Net Core微服务rpc框架GRPC通信的方法是什么
    本文小编为大家详细介绍“.Net Core微服务rpc框架GRPC通信的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“.Net Core微服务rpc框架GRPC通信的方法是什么”文章能帮助大家解决疑惑,下面跟...
    99+
    2023-06-26
  • .Net Core微服务rpc框架GRPC通信基础
    什么是rpc? rpc,全称Remote Procedure Call,通过它,你可以像调用本地方法一样调用远程服务。前端可以调用后端方法,后端也可以调用前端方法。其实这个概念并不陌...
    99+
    2024-04-02
  • .Net Core微服务rpc框架GRPC通信实际运用
    序 上一篇博客把grpc的概念说了个大概,介绍了proto的数据类型,基本语法,也写了个小demo,是不是没那么难? 今天要从理论到实际,写两个微服务,并利用grpc完成两者之间的通...
    99+
    2024-04-02
  • .Net Core微服务rpc框架GRPC通信如何运用
    本文小编为大家详细介绍“.Net Core微服务rpc框架GRPC通信如何运用”,内容详细,步骤清晰,细节处理妥当,希望这篇“.Net Core微服务rpc框架GRPC通信如何运用”文章能帮助大家解决疑惑,下面跟着小编的...
    99+
    2023-06-26
  • java rpc框架的使用方法是什么
    Java中常用的RPC框架有Dubbo、gRPC、Thrift等,它们的使用方法大致相似,一般包括以下步骤: 定义接口:首先需要...
    99+
    2024-03-08
    java
  • .Net Core微服务之EventBus的作用是什么
    在.NET Core微服务架构中,EventBus(事件总线)的作用是实现微服务之间的解耦和消息传递。它允许微服务之间通过发送和订阅...
    99+
    2023-09-21
    .Net EventBus 微服务
  • M2M通信云服务框架的作用是什么
    M2M通信云服务框架的作用是提供一种集成和管理物联网设备的解决方案。它允许设备之间进行实时通信和数据交换,同时集成了安全性、可靠性、...
    99+
    2023-09-22
    M2M
  • .Net Core服务治理Consul健康检查方法是什么
    这篇文章主要讲解了“.Net Core服务治理Consul健康检查方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“.Net Core服务治理Consul健康检查方...
    99+
    2023-06-26
  • 微信小程序的五个框架是什么
    这篇文章主要介绍了微信小程序的五个框架是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序的五个框架是什么文章都会有所收获,下面我们一起来看看吧。小程序开发第三方框架特性官方框架MINA小程序提供的开...
    99+
    2023-06-26
  • .NET Core分布式链路追踪框架的实现原理是什么
    本文小编为大家详细介绍“.NET Core分布式链路追踪框架的实现原理是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“.NET Core分布式链路追踪框架的实现原理是什么”文章能帮助大家解决疑惑,下面跟着小编的思路...
    99+
    2023-06-29
  • 关于go-micro与其它gRPC框架之间的通信问题及解决方法
    目录客户端改造服务端改造运行效果 在之前的文章中分别介绍了使用gRPC官方插件和go-micro插件开发gRPC应用程序的方式,都能正常走通。不过当两者混合使用的时候,互相访问就成了...
    99+
    2024-04-02
  • 教你在Spring Boot微服务中集成gRPC通讯的方法
    一、首先声明gRPC接口 这里引入的是最新的gRpc-core 1.37版本, 采用的grcp-spring-boot-starter封装的版本进行实现,github地址: http...
    99+
    2024-04-02
  • vue的通信方法是什么
    今天小编给大家分享一下vue的通信方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。通信方法:1、子组件设置props...
    99+
    2023-07-04
  • .NET Core中对象池Object Pool的使用方法是什么
    这篇文章主要讲解了“.NET Core中对象池Object Pool的使用方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“.NET Core中对象池Ob...
    99+
    2023-06-25
  • 云服务器Windows和Linux通信的方法是什么
    云服务器的Windows和Linux系统之间可以通过多种方式进行通信,常见的方法有以下几种:1. SSH(Secure Shell)...
    99+
    2023-09-22
    云服务器 Windows Linux
  • workflow框架使用的方法是什么
    Workflow框架的使用方法通常包括以下步骤: 确定需要进行流程管理的业务流程:首先需要明确要管理的业务流程,包括流程中的各个...
    99+
    2024-03-14
    workflow
  • ssm框架的配置方法是什么
    SSM框架的配置方法一般包括以下几个步骤:1. 配置Spring配置文件:创建一个Spring配置文件,通常命名为applicati...
    99+
    2023-09-21
    ssm
  • cobit框架的使用方法是什么
    COBIT框架是一个全面的信息技术管理框架,旨在帮助组织建立和维护有效的信息技术治理和管理体系。以下是COBIT框架的使用方法: ...
    99+
    2024-04-02
  • ThinkPHP框架的渗透方法是什么
    这篇文章主要讲解了“ThinkPHP框架的渗透方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ThinkPHP框架的渗透方法是什么”吧!信息收集找到一个网站 http://x.x.x...
    99+
    2023-06-28
  • 微前端框架导入加载子应用的方法是什么
    本篇内容主要讲解“微前端框架导入加载子应用的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微前端框架导入加载子应用的方法是什么”吧!下面代码,我指定的...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作