介绍 系列目录:[NET CORE微服务一条龙应用]开始篇与目录 在微服务的应用中,统一的认证授权是必不可少的组件,本文将介绍微服务中网关和子服务如何使用统一的权限认证 主要介绍内容为: 1.子服务如何实现和网关相同的鉴权方式 2.接口权限如何动态配置与修改 3.前后端分离模式下通用的后台管理系统(用户.权限.菜单.平台) 需提前了解知识点: 1.Jwt (JSON Web Token) 2.ClaimsPrincipal 3.Microsoft.AspNetCore.Authorization…
背景 系列目录:[NET CORE微服务一条龙应用]开始篇与目录 在分布式或者微服务系统里,通过配置文件来管理配置内容,是一件比较令人痛苦的事情,再谨慎也有湿鞋的时候,这就是在项目架构发展的过程中,配置中心存在的意义. 其实配置中心的组件已经有非常出名的案例,比如携程的阿波罗配置中心(https://github.com/ctripcorp/apollo) 为什么又造轮子,因为不想发布项目的时候到处切管理平台. 基本要求 作为一个通用的配置组件,需要支持如下功能: 1.客户端定时刷新获信最新配置…
简介 微服务的系统应用中,网关系统使用的是ocelot,ocelot目前已经比较成熟了 ocelot就不做介绍了,等整体介绍完后再进行各类扩展介绍,ocelot源码地址:https://github.com/ThreeMammals/Ocelot ocelot目前由很多功能组件组成,每个组件都可以根据自己的实际情况进行扩展(暂时不做过多介绍) 本文主要介绍ocelot网关使用中个人认为应该最先处理的东西 健康检查 在实际的应用中网关项目都会部署多台,然后通过nginx进行软负载,在更新部署网关项…
简介 随着业务的发展和变更,项目原先的分布式框架应用业务发展已有些不适应,所以18年初开始准备使用微服务框架,当时正好看到了ocelot项目,特意翻看了源码,发现很灵活和易扩展 于是就开始了微服务的开发与使用,现在已经使用了一年的时间,特意开了博客想把使用的经验与问题和大家进行探讨与学习. 前段时间就准备写了,但是公司突然推出了两个产品,又忙碌在撸码的队伍中,最近终于有点时间进行整理 目录 [NET CORE微服务一条龙应用]网关使用 [NET CORE微服务一条龙应用]配置中心应用 [NET…
简介 系列目录:[NET CORE微服务一条龙应用]开始篇与目录 本章主要介绍https://github.com/q315523275/FamilyBucket上微服务一条龙应用,在实际使用中的应用部署,以原始方式部署非docker 部署应用主要包括: 1.网关应用部署 2.授权认证应用部署 3.配置中心查询服务端应用部署 4.综合管理应用部署 5.后台运行应用部署 6.数据初始化 运行环境 应用所需运行环境,相关技术点不做介绍 1.net core 2.2/2.1 2.mysql 3.rab…
前言 上一篇[.Net Core微服务入门全纪录(二)--Consul-服务注册与发现(上)]已经成功将我们的服务注册到Consul中,接下来就该客户端通过Consul去做服务发现了. 服务发现 同样Nuget安装一下Consul: 改造一下业务系统的代码: ServiceHelper.cs: public class ServiceHelper : IServiceHelper { private readonly IConfiguration _configuration; public S…
前言: 前一篇文章<.NET Core 微服务—API网关(Ocelot) 教程 [二]>已经让Ocelot和目录api(Api.Catalog).订单api(Api.Ordering)通过网关方式运行起来了.但在日常开发中Api并不是所有人都能访问的,是添加了认证.授权的.那么本篇文章就将继续介绍Ocelot如何和 IdentityServer4 认证服务如何配合使用的. 创建认证服务(Api.IdentityServer) 1.创建一个空的WebApi项目-Api.IdentityServ…
一.前言 至今为止编程开发已经11个年头,从 VB6.0,ASP时代到ASP.NET再到MVC, 从中见证了.NET技术发展,从无畏无知的懵懂少年,到现在的中年大叔,从中的酸甜苦辣也只有本人自知.随着岁月的成长,技术也从原来的三层设计到现在的领域驱动设计,从原来的关系型数据库SQL 2000到现在的NOSQL (mongodb,couchbase,redis),从原来基于SOAP协议的web service到现在基于restful 协议的web api,wcf,再到现在rpc微服务.技术的成长也…
一.为啥要总结和收集这个系列? 今年从原来的Team里面被抽出来加入了新的Team,开始做Java微服务的开发工作,接触了Spring Boot, Spring Cloud等技术栈,对微服务这种架构有了一个感性的认识.虽然只做了两个月的开发工作,但是对微服务架构的兴趣却没有结束,又因为自己的.NET背景(虽然对.NET的生态有点恨铁不成钢),想要探索一下在.NET平台下的微服务架构的可行性,也准备一些材料作为分享的素材. 幸运的是,在.NET Core首届在线峰会上,看到了很多前辈的分享,也增强…
Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.Consul基础介绍 Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb的SmartStack等相比,Consul的方案更“一站式”,内置了服务注册与发现框 架.分布一致性协议实现.健康检查.Key/Value存储.多数据中心方案,不再需要依赖其他工具(比如ZooKeeper等),使用起来也较 为简单. Consul用Golang实现,因此具…