什么是gRpcHttp网关

通俗的讲就是将gRpc提供的服务以rest api的形式提供出去,不需要再单独的写一个webapi去做这件事。

gRpcHttp网关好处

减少不必要代码,减少中间层提高通讯效率。

以前可能是这样

用了gRpc网关后是这样

gRpcHttp网关提供哪些功能

  • 可以直接加载proto生成的dll文件

  • 可以只需要proto文件,自动解析出proto文件所提供的model和service

  • 支持header转发

  • 支持gRpc的四种模式

  • 支持gRpc中间件

  • 支持swagger(开发中)

  • 支持proto和dll文件动态新增,不需要重启网关

Getting Started

  • git clone https://github.com/BuiltCloud/Ocelot.GrpcHttpGateway.git

  • cd Ocelot.GrpcHttpGateway/src

  • cd samples\OcelotGateway and dotnet run

  • cd samples\Examples.GrpcServer and dotnet run

  • copy Examples.GrpcModels.dll to samples\OcelotGateway\bin\Debug\netcoreapp2.1\plugins

  • curl http://localhost:5000/grpc/PLAYERSEARCH/SEARCHTEAM

  • curl http://localhost:5000/grpc/PLAYERSEARCH/SearchPlayer_ServerStream

  • curl http://localhost:5000/grpc/PLAYERSEARCH/SearchPlayer_ClientStream

  • curl http://localhost:5000/grpc/PLAYERSEARCH/SearchPlayer_DuplexStream

  • curl http://localhost:5000/srv 查看当前服务和方法

你还可以复制.proto文件到Examples.GrpcModels.dll to samples\OcelotGateway\bin\Debug\netcoreapp2.1\protos目录
查看http://localhost:5000/srv变化

Github https://github.com/BuiltCloud/Ocelot.GrpcHttpGateway

相关文章:

  • AspNetCore中使用Ocelot之 IdentityServer4

  • Ocelot-基于.NET Core的开源网关实现

  • .NET Core微服务之基于Ocelot+IdentityServer实现统一验证与授权

  • Swagger如何访问Ocelot中带权限验证的API

  • Ocelot.JwtAuthorize:一个基于网关的Jwt验证包

  • .NET Core微服务之基于Ocelot实现API网关服务

  • .NET Core微服务之基于Ocelot实现API网关服务(续)

  • .NET微服务体系结构中为什么使用Ocelot实现API网关

  • Ocelot简易教程(一)之Ocelot是什么

  • Ocelot简易教程(二)之快速开始1

  • Ocelot简易教程(二)之快速开始2

  • Ocelot简易教程(三)之主要特性及路由详解

  • Ocelot简易教程(四)之请求聚合以及服务发现

原文地址: https://www.cnblogs.com/kingreatwill/p/9722963.html


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

基于Ocelot的gRpcHttp网关相关推荐

  1. 基于Ocelot的gRpc网关

    原文&思路参见(本例代码调整较多,也做了比较多的改进):基于Ocelot的gRpcHttp网关_dotNET跨平台的博客-CSDN博客 网关架设后,请求即为如下: 思路解析: 1.定时监控某个 ...

  2. .NET Core微服务之路:基于Ocelot的API网关实现--http/https协议篇

    前言 最近一直在忙公司和私下的兼职,白天十个小时,晚上四个小时,感觉每天都是打了鸡血似的,精神满满的,连自己那已经学打酱油的娃都很少关心,也有很长一段时间没有更新博客了,特别抱歉,小伙伴们都等得想取关 ...

  3. .NET Core微服务之基于Ocelot实现API网关服务(续)

    Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.负载均衡与请求缓存 1.1 负载均衡 为了验证负载均衡,这里我们配置了两个Consul Client节点,其中ClientServic ...

  4. .NET Core微服务之基于Ocelot实现API网关服务

    一.啥是API网关? API 网关一般放到微服务的最前端,并且要让API 网关变成由应用所发起的每个请求的入口.这样就可以明显的简化客户端实现和微服务应用程序之间的沟通方式.以前的话,客户端不得不去请 ...

  5. NET Core微服务之路:基于Ocelot的API网关实现--http/https协议篇

    前言 最近一直在忙公司和私下的兼职,白天十个小时,晚上四个小时,感觉每天都是打了鸡血似的,精神满满的,连自己那已经学打酱油的娃都很少关心,也有很长一段时间没有更新博客了,特别抱歉,小伙伴们都等得想取关 ...

  6. NET Core微服务之路:基于Ocelot的API网关Relay实现--RPC篇

    前言 我们都知道,API网关是工作在应用层上网关程序,为何要这样设计呢,而不是将网关程序直接工作在传输层.或者网络层等等更底层的环境呢?让我们先来简单的了解一下TCP/IP的五层模型. (图片出自ht ...

  7. Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(三)

    在前面两篇文章中,我介绍了基于IdentityServer4的一个Identity Service的实现,并且实现了一个Weather API和基于Ocelot的API网关,然后实现了通过Ocelot ...

  8. Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(二)

    上文已经介绍了Identity Service的实现过程.今天我们继续,实现一个简单的Weather API和一个基于Ocelot的API网关. 回顾 <Angular SPA基于Ocelot ...

  9. Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(一)

    好吧,这个题目我也想了很久,不知道如何用最简单的几个字来概括这篇文章,原本打算取名<Angular单页面应用基于Ocelot API网关与IdentityServer4+ASP.NET Iden ...

最新文章

  1. 入门系列之使用Sysdig监视您的Ubuntu 16.04系统
  2. flask mysql项目模板渲染_Flask模板渲染
  3. java游戏怎么导入jme3,Java Camera.getProjectionMatrix方法代码示例
  4. python 栈排序
  5. 学习Spring Boot:(二十二)使用 AOP
  6. DatabaseMetaData 获取mysql表和字段注释
  7. Ghost in IE6.web标准网页IE6中的幽灵。
  8. 95-40-025-java.util.concurrent-并发容器
  9. ASP.NET Core DI 手动获取注入对象
  10. raft协议 java_图解分布式协议-RAFT
  11. 【Spring-tx】事务。
  12. 6款强烈推荐的PDF阅读器
  13. 距离度量准则(转载)
  14. bootCDN引用的bootstrap前端框架套件和示例
  15. flv是什么视频格式?怎么把flv转换成mp4?
  16. 蓝牙协议(bluetooth spec)
  17. 618京东和天猫打得火热,笑得最开心的却是直播巨头?
  18. 三种平摊分析的方法分别为_算法 平摊分析
  19. OpenCV移植ARM之ldconfig配置
  20. C++ [STL容器反向迭代器]

热门文章

  1. selenium - Select类 - 下拉框
  2. 对抗告警疲劳的8种方法
  3. SQL点滴19—T-SQL中的透视和逆透视
  4. js获取当前页面url网址等信息
  5. [转]让Linux的tty界面支持中文
  6. Visual Studio 清单(manifest)导致的问题
  7. MYSQL技术连环斩-MYSQL简述
  8. DevToys - 开发人员的瑞士军刀
  9. EF Core的一个紧急bug,我这样修改
  10. 如何排查 StackOverflow 异常