参考:
Ocelot 中文文档:http://www.jessetalk.cn/2018/03/19/net-core-apigateway-ocelot-docs/ --刘腾飞
Ocelot 资源汇总--张善友
常见网关:
- Netflix Zuul +java实现
- Kong nginx +lua脚本实现
- Tyk go语言开发,收费版本
- Ocelot aspnetcore开发的
测试网关条件
- 三个项目
- 网关
- Consul
在MicroService.Gateway(网关服务)安装Nuget包
通过Json文件配置Ocelot相关参数
-
Downstream 是下游服务配置
-
UpStream 是上游服务配置
-
Aggregates 服务聚合配置
-
ServiceName, LoadBalancer, UseServiceDiscovery 配置服务发现
-
AuthenticationOptions 配置服务认证
-
RouteClaimsRequirement 配置Claims鉴权
-
RateLimitOptions 为限流配置
-
FileCacheOptions 缓存配置
-
QosOptions 服务质量与熔断
-
DownstreamHeaderTransform 头信息转发
-
DownstreamPathTemplate:下游路径模板
-
DownstreamScheme:下游服务http schema
-
DownstreamHostAndPorts:下游服务的地址,如果使用LoadBalancer的话这里可以填多项
-
UpstreamPathTemplate: 上游也就是用户输入的请求Url模板
-
UpstreamHttpMethod: 上游请求http方法,可使用数组
LoadBalancer将决定负载均衡的算法
-
LeastConnection – 将请求发往最空闲的那个服务器
-
RoundRobin – 轮流发送
-
NoLoadBalance – 总是发往第一个请求或者是服务发现