温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ASP.NET Core微服务框架Ocelot+Consul+IdentityServer4的操作方法

发布时间:2021-09-23 09:10:57 来源:亿速云 阅读:280 作者:柒染 栏目:编程语言

今天就跟大家聊聊有关ASP.NET Core微服务框架Ocelot+Consul+IdentityServer4的操作方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

一、背景介绍

API网关的流行源于最近几年移动应用与企业间接口对接的兴起,使得原来单一的PC客户端,变化到PC客户端、各种浏览器、手机移动端及智能终端等。同时系统之间大部分都不是单独运行,经常会涉及与其他系统对接、共享数据的需求。随着微服务架构概念的提出,API网关成为了微服务架构的一个标配组件。随着业务快速发展,面向手机移动应用业务越来越多,为了减少客户端与服务的耦合,节约后端微服务的开发成本,建立一个高性能、高可用、减少上线风险的API网关成为一个迫切的需求。

1)、目前面临现状:假设你正好是一个后端开发,而老板又刚好让你开发网站,其中需要涉及到很多后端的微服务,比如会员、商品、推荐服务等等。那么这里就会遇到一个问题,APP/Browser怎么去访问这些后端的服务?如果业务比较简单的话,可以给每个业务都分配一个独立的域名(https://service.api.company.com),但这种方式会有几个问题:每个业务都会需要鉴权、限流、权限校验等逻辑,如果每个业务都各自为战,自己造轮子实现一遍,会很蛋疼,完全可以抽出来,放到一个统一的地方去做。

2)、有效的解决办法:更好的方式是采用API网关,实现一个API网关接管所有的入口流量,类似Nginx的作用,将所有用户的请求转发给后端的服务器,但网关做的不仅仅只是简单的转发,也会针对流量做一些扩展。比如鉴权、限流、权限、熔断、协议转换、错误码统一、缓存、日志、监控、告警等,这样将通用的逻辑抽出来,由网关统一去做,业务方也能够更专注于业务逻辑,提升迭代的效率。通过引入API网关,客户端只需要与API网关交互,而不用与各个业务方的接口分别通讯,

本次分享课程阿笨将在基于上两堂课程的基础上以ASP .NET Core 为例子,目前比较火热的就是 ocelot+consul 的搭配,通过在服务中嵌入 ocelot 和 consul 的客户端,自动的完成服务注册到(Consul)和服务发现(ocelot读取Consul中的服务);当用户访问某个 url 的时候,ocelot 将会根据路由将用户请求转发到从 Consul 拉取到的真正的服务中同时通过统一身份认证授权中心IdentityServer4进行鉴权。

二、ASP.NET Core微服务框架Ocelot+Consul+IdentityServer4项目结构介绍

ASP.NET Core微服务框架Ocelot+Consul+IdentityServer4的操作方法

ASP.NET Core微服务框架Ocelot+Consul+IdentityServer4实战演练

三、 Consul服务注册与发现介绍

四、下游微服务通过API接入Consul

五、Ocelot网关介绍

六、Ocelot网关认证授权流程图

七、认证授权IdentityServer4介绍以及搭建

八、Ocelot网关接入认证授权中心

九、Ocelot网关接入Conusl服务注册与发现

十、Ocelot网关统一查看多个API微服务Swagger接口文档

网关在硬件里有自己的定义,而在软件架构里也有自己的解释,它就是所有请求的入口,请求打到网关上,经过处理和加工,再返回给客户端,这个处理过程中当然就是网关的核心,也是Ocelot的核心,我们可以把用户授权,校验,缓存,认证等很多关注点在网关中实现!

看完上述内容,你们对ASP.NET Core微服务框架Ocelot+Consul+IdentityServer4的操作方法有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI