zoukankan      html  css  js  c++  java
  • gRPC介绍和使用

    gRPC玩法:

    服务端
    1.新建gRPC项目,添加protos文件
    2.在项目文件中增加节点
    3.编译项目,
    4.添加服务类,继承来自proto文件生成的一个类
    5.覆写父类的虚方法
    6.startup UseEndpoints注册服务

    客户端:
    0.nuget 添加:grpc.tools;grpc.netclient;google.protobuf
    1.从服务端copy proto文件到客户端
    2.在项目文件中配置使用当前这个proto文件

    ------------------------------------------------------------------


    1. gRPC 是一个高性能,开源的,跨语言的RPC框架

    基于 Http/2 传输协议(支持流)
    Protocol buffers高效序列化(JSON / XML)

    2. gRPC支持4种流
    简单 RPC(Unary RPC):传入一个请求,返回一个结果对象
    服务端流式 RPC (Server streaming RPC):传入一个请求,返回多个结果对象
    客户端流式 RPC (Client streaming RPC) :传入多个请求,返回1个结果对象
    双向流式 RPC(Bi-directional streaming RPC):传入多个请求,返回多个结果对象

    3.为什么要用grpc
    WebService:最早-门槛最低,soap+xml累赘,只Http,依赖IIS
    .NetRemoting:RPC--.NET RPC(限制多)---性能高
    WCF—集大成者,各种服务各种协议—XML 重---.NET5移除WCF(未来可能又有了)
    WebApi&Core WebApi---
    gRPC


    Webapi &core webapi就是遵循REST的框架,路由
    Json格式—比XML轻一些

    Http/2:高性能—专属序列化格式---多路复用双向流---
    gRPC对js不是很友好,性能也不总是比webapi好
    (gRPC数据量越大,相对性能越好)
    内部交互,用gRPC
    外部数据,用core webapi

    4. 使用步骤:
    服务端:
    1.新建grpc项目服务端项目
    2.添加nuget: grpc.tools;grpc.net.client;grpc.aspnetcore;google.protobuf
    3.添加custom.proto 协议文件,编译
    4.新建customService.cs 业务处理方法

    客户端:
    1.添加custom.proto 协议文件,编译;
    2.program.cs 添加调用服务器端的方法,可以获取返回结果数据;

    ---------Jemter 测试补偿--------------------

    响应时间500ms;互联网行500ms,淘宝20ms,银行1-2m,制造也3-5m
    系统处理能力:HPS,TPS,QPS:互联网行
    吞吐量:
    并发数:500
    错误率:99.4

    Harbor

    code--git--jenkins--harbor--kuernetes:管理镜像
    JMeter 如何带token 测试接口

    HTTP信息头管理器token
    Bearer token  //中间空格

    redis 不是并发的瓶颈,需优化:
    网关
    log
    MVC

  • 相关阅读:
    删除MSSQL危险存储过程的代码
    给年轻工程师的十大忠告[转贴]
    HTML中利用堆栈方式对Table进行行排序
    年轻人宣言:青春符号
    刘亦菲小龙女绝美剧照
    精巧完整的日历程序
    XSLT快速参考
    酒吧里经典的英文歌曲专集(4CD)
    检测系统颜色与使用字体
    SQL Server实用操作小技巧集合
  • 原文地址:https://www.cnblogs.com/csj007523/p/14563249.html
Copyright © 2011-2022 走看看