环境准备  vs开发环境:vs2017 consul版本: 1.4.4 netcore版本:2.1 安裝Consul  1.从官网下载consul到本地,选择系统对应的版本进行下载到本地,下载地址:https://www.consul.io/downloads.html 2.下载到本地之后解压压缩文件,并且配置环境变量(不需要每次都得到文件所在的目录文件夹下进行启动consul) 3.配置完成之后打开cmd输入consul,出现以下页面代表配置成功!~ 4.输入consul agent -dev…
前言 上一篇[.Net Core微服务入门全纪录(六)--EventBus-事件总线]中使用CAP完成了一个简单的Eventbus,实现了服务之间的解耦和异步调用,并且做到数据的最终一致性.这一篇将使用IdentityServer4来搭建一个鉴权中心,来完成授权认证相关的功能. IdentityServer4官方文档:https://identityserver4.readthedocs.io/ 鉴权中心 创建ids4项目 关于IdentityServer4的基本介绍和模板安装可以看一下我的另一…
一.什么是SpringCloud Alibaba 1.简介 1)简介 阿里云未分布式应用开发提供了一站式解决方案.它包含了开发分布式应用程序所需的所有组件,使您可以轻松地使用springcloud开发应用程序. 有了阿里云,你只需要添加一些注解和少量的配置,就可以将spring云应用连接到阿里的分布式解决方案上,用阿里中间件搭建一个分布式应用系统. 2.环境搭建 新建一个空项目,然后按下述建模块(所有springcloud alibaba项目都要准备以下内容) 1)说明 springboot 2…
前言 上一篇[.Net Core微服务入门全纪录(一)--项目搭建]讲到要做到服务的灵活伸缩,那么需要有一种机制来实现它,这个机制就是服务注册与发现.当然这也并不是必要的,如果你的服务实例很少,并且很稳定,那么就没有必要使用服务注册与发现. 服务注册与发现 服务注册:简单理解,就是有一个注册中心,我们的每个服务实例启动时,都去注册中心注册一下,告诉注册中心我的地址,端口等信息.同样的服务实例要删除时,去注册中心删除一下,注册中心负责维护这些服务实例的信息. 服务发现:既然注册中心维护了各个服务实…
前言 上一篇[.Net Core微服务入门全纪录(二)--Consul-服务注册与发现(上)]已经成功将我们的服务注册到Consul中,接下来就该客户端通过Consul去做服务发现了. 服务发现 同样Nuget安装一下Consul: 改造一下业务系统的代码: ServiceHelper.cs: public class ServiceHelper : IServiceHelper { private readonly IConfiguration _configuration; public S…
前言 上一篇[.Net Core微服务入门全纪录(三)--Consul-服务注册与发现(下)]已经使用Consul完成了服务的注册与发现,实际中光有服务注册与发现往往是不够的,我们需要一个统一的入口来连接客户端与服务. Ocelot 官网:https://ocelot.readthedocs.io/ Ocelot正是为.Net微服务体系提供一个统一的入口点,称为:Gateway(网关). 上手Ocelot: 首先创建一个空的asp.net core web项目. 注意ocelot.json是我们…
前言 上一篇[.Net Core微服务入门全纪录(四)--Ocelot-API网关(上)]已经完成了Ocelot网关的基本搭建,实现了服务入口的统一.当然,这只是API网关的一个最基本功能,它的进阶功能还有很多很多. 服务发现 首先需要解决的就是服务发现的问题,服务发现的优点之前讲过,就不说了. 上一篇中我们的服务地址都是写在ocelot.json配置文件里,现在我们需要结合之前的Consul来实现服务发现. 改造代码: 首先NuGet安装Ocelot.Provider.Consul: 修改St…
前言 上一篇[.Net Core微服务入门全纪录(五)--Ocelot-API网关(下)]中已经完成了Ocelot + Consul的搭建,这一篇简单说一下EventBus. EventBus-事件总线 首先,什么是事件总线呢? 贴一段引用: 事件总线是对观察者(发布-订阅)模式的一种实现.它是一种集中式事件处理机制,允许不同的组件之间进行彼此通信而又不需要相互依赖,达到一种解耦的目的. 如果没有接触过EventBus,可能不太好理解.其实EventBus在客户端开发中应用非常广泛(androi…
Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 前言 上一篇[.Net Core微服务入门全纪录(七)--IdentityServer4-授权认证]中使用IdentityServer4完成了鉴权中心的搭建,配合网关实现了统一的授权认证.进行到这里,系统环境已经比较复杂了,想把整个系统运行起来会非常繁琐:要运行Consul.业务服务.网关.鉴权中心.web客户端,还要安装数据库.MQ等等...那么本篇将使用Docker Compose来解决以上问题,仅需一个简单的命令,即可启动整个…
Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 前言 上一篇[.Net Core微服务入门全纪录(八)--Docker Compose与容器网络]完成了docker-compose.yml文件的编写,最后使用docker compose的一个up指令即可在docker中运行整个复杂的环境.本篇简单介绍一下Ocelot与Swagger的集成,方便在网关项目中统一查看各个服务的api文档. 开始 首先,网关项目,服务项目 NuGet安装Swashbuckle.AspNetCore:…