首页 > 其他分享 >GRPC入门

GRPC入门

时间:2022-09-03 22:24:04浏览次数:63  
标签:文件 入门 Package GRPC proto Install 服务端

RPC

远程过程调用(远程函数调用)

GRPC

google开发,跨语言RPC,用来解决微服务通信性能和扩展问题
跨语言:通过Protobuffer文件(通用文件)解决跨语言问题的
高并发:GRPC基于http/2协议,多路复用机制(服务端一个线程可以连接任意数量客户端请求)

webapi缺陷

webapi基于HTTP协议,7层通讯协议,高并发存在性能瓶颈。

创建GRPC服务端项目

方式1、新建grpc项目

方式2、手动创建

1、创建proto文件
proto文件相当于服务接口
2、通过proto文件创建服务类

创建GRPC客户端项目

1、创建项目GrpcClient
2、安装Nuget包

Install-Package Grpc.Net.Client
Install-Package Google.protobuf
Install-Package Grpc.Tools

3、拷贝服务端项目的Protos/greet.proto文件到客户端
修改proto文件

option csharp_namespace = "GrpcClient";

4、项目文件中添加

<ItemGroup>
  <Protobuf Include="Protos\greet.proto" GrpcServices="Client" />
</ItemGroup>

proto文件语法

service:定义服务
rpc:定义方法
message:入参、出参必须是一个类,由message关键字定义

标签:文件,入门,Package,GRPC,proto,Install,服务端
From: https://www.cnblogs.com/fanfan-90/p/16653576.html

相关文章

  • Redis入门篇
    基础篇Redis1.Redis简单介绍Redis是一种键值型的NoSql数据库,这里有两个关键字:键值型NoSql其中键值型,是指Redis中存储的数据都是以key.value对的形式存储,而value的形......
  • PhotoShop入门
    字体安装将xxx.ttf字体文件放在C:\Windows\Fonts目录下。PhotoShop新建工作区默认显示的工作区如下图所示:图层、通道、路径、调整、库等都是不常用的。可以选择关......
  • JPA 入门实战(4)--Spring Data JPA 使用
    本文主要介绍SpringBoot中如何使用SpingDataJPA,相关的环境及软件信息如下:SpringBoot2.6.10。1、SpingDataJPA简介SpringDataJPA是SpringData家族的一部......
  • 读UnityShader入门精要第六章-Unity中的基础光照
    1.我们如何看到这个世界1.1 光源光是由光源发出的,在实时渲染中,光源被当成一个没有体积的点.在光学中,使用辐照度(irradiance)来量化光.当光打在一个平面上......
  • vb.net 开发 VSIX VS插件开发 Addin 入门 示例
    使用vb.net写一个小的VS插件,简直就是灾难. 微软网站上机器翻译的中文,惨不忍睹.折腾了一天多,把心得给大家分享一下.同时也希望有高手指导一下.如果创建项目没......
  • 信息学一本通 第一章 C++语言入门 2060:【例1.1】计算机输出
    【题目描述】在屏幕上输出“HelloWorld!”。【输入】(无)【输出】(无)【输入样例】(无)【输出样例】HelloWorld!#include<iostream>usingnamespacestd;in......
  • HBase概念入门
    HBase简介HBase基于Google的BigTable论文而来,是一个分布式海量列式非关系型数据库系统,可以提供大规模数据集的实时随机读写。下面通过一个小场景认识HBase存储。同样的一......
  • 最大似然估计(MLE)入门教程
     什么是最大似然估计(MLE)最大似然估计(MaximumLikelihoodEstimation)是一种可以生成拟合数据的任何分布的参数的最可能估计的技术。它是一种解决建模和统计中......
  • css快速入门-语法
    css从位置上分类:嵌入式样式表,内部样式表,外部样式表在一个标签上写style属性在style属性中写样式属于嵌入式样式表在head中写的style标签属于内部样式表html文件中不写cs......
  • 10.自动配置原理入门
    @SpringBootConfiguration@EnableAutoConfiguration@ComponentScan(excludeFilters={@Filter(type=FilterType.CUSTOM,classes=TypeExcludeFilter.class),......