首页 > 作文

.Net Core微服务网关Ocelot集成Consul

更新时间:2023-04-04 12:07:22 阅读: 评论:0

有consul基础的都知道,consul可以发现新增的服务,剔除掉无效的服务,赋予应用自动伸缩的能力。而ocelot如果集成了consul,那ocelot也能拥有这些能力,还可以自主选择负载均衡策略,灵活性更强。

(建议看完文章再来实践这一篇,不然可能有难度)

上干货。

首先打开上一篇新建好的项目,继续添加nuget包:

然后注册相关服务:

public void configurervices(irvicecollection rvices)        {            rvices.addocelot()                .addconsul()                .addconfigstor罗斯福新政教案edinconsul();        }

接下来还需要修改下配置文件:

{  "routes": [    {      "downstreampathtemplate": "/{url}",      "downstreamscheme": "http",      //"downstreamhostandports": [      //  {      //    "host": "123.123.123.123",      //    "port": 5050      //  }      //],      "upstreampathtemplate": "/mj/{url}",      "upstreamhttpmethod": [ "get", "post" ],      "学院英语rvicename": "study_consul",      "loadbalanceroptions": {        "type": "roundrobin"      }    }  ],  "globalconfiguration": {    "rvicediscoveryprovider": {      "host": "42.193.182.64",      "port": 88    }  }}

注释部分是原先常规的转发规则,变色部分是集成consul以后新增的配置。

这里说下配置项loadbalanceroptions(负载均衡),官方实现了4个负载均衡器,分别是:

1、leastconnection – 跟踪哪些服基因自由组合定律务正在处理请求,并向现有请求最少的服务发送新请求。2、roundrobin – 轮询。3、noloadbalancer – 从配置或服务发现中获取第一个可用服务。4、cookiestickyssions – 使用 cookie 将所有请求粘贴到特定服务器。

如果选择了第四个,那么需要额外的参数来描述cookie,比如:

"loadbalanceroptions": {        "type": "cookiestickyssions",        "key": "asp.net_ssionid",        "expiry": 1800000 //过期时间    },

关于负载均衡器,本文诡新娘 电影不多做详解,回到主题。

consul需要单独搭建,所以我准备了一个拥有6个节点的consul集群:

然后在集群下注册了3个服务:

这时运行网关并请求,网关会把请求自动转到远程的consul,并且在已有的con考研英语模板sul服务中轮询调用。来看一下运行结果:

多刷新几下:

如果你得到了类似的结果,恭喜你,已经完成了集成的操作。同时,还可以解锁一个新操作:热更新。

热更新

打开consul控制面板,找到key/value,你会发现这里多了一个键值对:

进入查看会发现,这是ocelot的配置:

这一份配置文件里包含了当前版本的ocelot支持的所有配置项,并且修改后即时生效。

改个路由证明下:

原来:"upstreampathtemplate": "/mj/{url}"现在:"upstreampathtemplate": "/{url}"

save以后再请求:

这感觉,酸爽。

既然是搞技术,自然不能脱离实际。上面的consul集群、consul客户端、网关程序都部署在不同的阿里云服务器上,和生产环境一样。学习的话,部署到本机也可以,consul单机也可以。如果你没有consul基础或者理解的不清晰,可以看我之前的系列文章,应该有帮助,往前翻一翻就有。友情提醒一下,单体的ocelot、consul禁止上生产,太脆弱,一挂全完。

到此这篇关于.net core微服务网关ocelot集成consul的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持www.887551.com。

本文发布于:2023-04-04 12:07:20,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/5c5e14465fced46df78ef06f528a0802.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:.Net Core微服务网关Ocelot集成Consul.doc

本文 PDF 下载地址:.Net Core微服务网关Ocelot集成Consul.pdf

标签:均衡器   网关   集群   这一
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图