微服务专题之.Net6下集成微服务网关-Ocelot

Posted dotNET跨平台

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微服务专题之.Net6下集成微服务网关-Ocelot相关的知识,希望对你有一定的参考价值。

微信公众号:趣编程ACE
关注可了解更多的.NET日常实战开发技巧,如需源码 请公众号后台留言 源码;
[如果觉得本公众号对您有帮助,欢迎关注]

.Net6下集成微服务网关-Ocelot


网关常见功能

  • 1:路由 routing

  • 2: 请求聚合

  • 3:身份验证和授权

  • 4:速率限制

  • 5:缓存

  • 6:负载均衡

路由 routing基本使用

安装Nugget包

1// 18.0.0 最新版 支持.net 6 
2Install-Package Ocelot

建立一个.Net6 Web Api 的项目


服务端代码编写

1// 添加日志服务 ,这样在访问网关接口的时候可以在控制台打印输出相应的信息
 2builder.Host.ConfigureLogging(log=>
 3    log.ClearProviders();
 4    log.AddConsole();
 5);
 6// 注册Ocelot 服务
 7builder.Services.AddOcelot();
 8
 9// ----------
10// 注册好Ocelot 服务后 启用其中间件
11app.UseOcelot().Wait();

设置Ocelot 配置json文件

在项目根目录下创建一个ocelot.json 文件
PS:配置文件详细参数介绍参考上文视频或者官网地址

1
 2    "Routes": [
 3        
 4        "DownstreamPathTemplate": "/todos/id",
 5        "DownstreamScheme": "https",
 6        "DownstreamHostAndPorts": [
 7            
 8                "Host": "jsonplaceholder.typicode.com",
 9                "Port": 443
10            
11        ],
12        "UpstreamPathTemplate": "/todos/id",
13        "UpstreamHttpMethod": [ "Get" ]
14        
15    ],
16    "GlobalConfiguration": 
17        "BaseUrl": "https://localhost:5000"
18    
19

最终效果-详情见视频

以上是关于微服务专题之.Net6下集成微服务网关-Ocelot的主要内容,如果未能解决你的问题,请参考以下文章

微服务专题之.Net6下集成消息队列-RabbitMQ交换机模式代码演示(全)

微服务专题之.Net6下集成消息队列-RabbitMQ交换机模式代码演示(全)

微服务专题之.Net6中集成消息队列-RabbitMQ中直接路由模式

微服务专题之.Net6中集成消息队列-RabbitMQ中直接路由模式

2018-11-16 打算把胶州的项目升级成微服务,不过还是在自己服务器上跑一下看看情况吧先

#私藏项目实操分享#SpringCloud技术专题「Gateway网关系列」微服务网关服务的Gateway组件的原理介绍分析