首页 > 其他 > 详细

关于Ocelot 网关结合Consul实现服务转发的坑爹问题

时间:2018-07-13 19:58:48      阅读:693      评论:0      收藏:0      [点我收藏+]

下面是我的网关配置来验证下Ocelot的问题,如果只是做网关转发应该还ok,但是要是结合Consul来检查并健康的转发有效服务器还是有很多弊端

下面用代码来说明下:

 

{
  "ReRoutes": [
    {
      "DownstreamPathTemplate": "/api/Check/ocelot",
      "DownstreamScheme": "http",
      "DownstreamHostAndPorts": [
        {
          "Host": "192.168.0.233",
          "Port": 20011
        },
        {
          "Host": "192.168.0.233",
          "Port": 20012
        },
        {
          "Host": "192.168.0.233",
          "Port": 30011
        }
      ],
      "UpstreamPathTemplate": "/testocelot",
      "UpstreamHttpMethod": [ "Get" ],
      "LoadBalancer": "LeastConnection",
      "ServiceName": "userservices",
      "UseServiceDiscovery": true

    }
  ],

  "GlobalConfiguration": {
    "BaseUrl": "http://192.168.0.233:20010",
    "ServiceDiscoveryProvider": {
      "Host": "192.168.0.233",
      "Port": 8500

    }

  }
}

网关都是结合consul服务的状态,那么服务器web网站的consul服务没有注册,何来的健康转发呢?

.NetCore 在 Configure中配置了 consul 服务注册,但是 web网站都没有运行起来 consul 服务就不存在 更不存在健康证状态 

那么  利用 ServiceDiscoveryProvider 服务发现的方式来转发 根本就会失败

所以感觉还是坑~~~~

 

当web站点没有访问过的时候 Consul服务

技术分享图片

访问web站点

技术分享图片

 

关于Ocelot 网关结合Consul实现服务转发的坑爹问题

原文:https://www.cnblogs.com/liyouming/p/9306774.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!