项目介绍
1、各种方式连接API都会连接到 APIGateway 来进行统一的分发 Ocelot
2、当api需要授权时 需要请求授权服务 IdentityServer4
3、授权服务对请求进行调用user.api 验证
4、user.api验证结果返回
5、授权服务返回token信息或授权失败
6、携带token访问user.api
7、user.api返回结果 (401,403是未授权)
8、访问不需要授权的user.api
9、api之间的交互 Polly
10、api之间通过EventBus交互RabbitMQ Publish RabbitMQ CAP
11、api之间通过EventBus交互RabbitMQ Subscribe
12、Consul进行整个微服务的注册和发现 Consul
13、数据库 Sqlserver MySQL Redis MongoDB
14、部署Linux 使用docker容器化微服务 Nginx发布 Ubuntu Docker Nginx
参考文档
Ocelot文档 https://ocelot.readthedocs.io/en/latest/index.html
IdentityServer4文档 http://docs.identityserver.io/en/latest/
Polly 文档 https://github.com/App-vNext/Polly/wiki
RabbitMQ 文档 https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html
其他参考抽空整理(或者写在之后的具体模块博客中)
视频推荐
solenovex 博客 https://www.cnblogs.com/cgzl/category/1090036.html (bilibili 搜名字有.net core 教学视频 顶)
jessetalk 视频 http://video.jessetalk.cn/ (我的项目就是按照他的视频开发的)
现在我也在边学习边整理的状态 可以按照上面的视频教学 配合这官方文档一起学习
我已经做了一部分了
https://github.com/Henry-Net/NewDistributedProject
项目运行的话吧所有里面的地址和端口改一下 并且user.api 的交互可能报错 因为需要安装consul
原文地址:https://www.cnblogs.com/Henryblogs/p/11417498.html