AG-Admin是国内首个基于Spring Cloud
微服务
化开发平台
,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用Eureka、Fegin、Ribbon、Zuul、Hystrix、Security、JWT Token、Mybatis等主要框架和中间件,前端采用Layui组件。
QQ群号:169824183(已满)、661605461(2)
访问地址: http://120.77.133.155/
账号/密码:admin/admin
考虑许多码友对于Spring Cloud的前后端分离和微服务实战有较多的疑问。老A专门录制课程如下,便于对AG-Admin更深入的了解
【基础+进阶】课程地址: http://edu.csdn.net/course/detail/5840
【直接进阶】课程地址: http://edu.csdn.net/course/detail/5914
利用Spring Boot Admin 来监控各个独立Service的运行状态;利用Hystrix Dashboard来实时查看接口的运行状态和调用频率等。
将服务保留的rest进行代理和网关控制,除了平常经常使用的node.js、nginx外,Spring Cloud系列的zuul和rebbion,可以帮我们进行正常的网关管控和负载均衡。
基于Eureka来实现的服务注册与调用,在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。
因为采取了服务的分布,为了避免服务之间的调用“雪蹦”,我采用了Hystrix的作为熔断器,避免了服务之间的“雪蹦”。
├─ace-security
│ │
│ ├─ace-admin----------------管理端服务层
│ │
│ ├─ace-gate-----------------网关负载中心
│ │
│ ├─ace-ui-------------------前端UI层面
│ │
│ ├─ace-center---------------服务注册中心
│ │
│ ├─ace-monitor--------------统一监控中心
│ │
│ ├─ace-config---------------统一配置中心
│ │
│ └─ace-api------------------公共服务接口包
│
- 用户管理
- 角色管理
- 部门管理(待完善)
- 菜单管理
- 字典管理
- 操作日志
- 监控管理
- 消息管理(待完善)
- 代码生成(待完善)
- mysql数据库一个,redis数据库一个
- jdk1.8
- IDE插件一个,lombok插件,具体百度即可
- 运行数据库脚本:依次运行数据库:ace-admin/db/init.sql
- 修改配置数据库配置:ace-admin/src/main/resources/application.yml、ace-gate/src/main/resources/application.yml
- 依次运行main类:CenterBootstrap(ace-center)、ConfigServerBootstrap(ace-config)、GateBootstrap(ace-gate)、AdminBootstrap(ace-admin)、UIBootstrap(ace-ui)
- 访问地址: http://localhost:8765/admin/index 账号/密码:admin/admin
- 运行数据脚本:ace-blog-admin/db/init.sql
- 除了上述需要运行的main类外,依次运行BlogUIBootstrap、BlogAdminBootstrap
- 前端访问地址:http://localhost:9700/home
- 后端访问地址:http://localhost:8765/admin/index 账号/密码:blog/blog
- 增加
Spring cloud config
,默认配置地址:http://git.oschina.net/geek_qi/AG-Config - ace-gate中关于网关配置抽离至config git服务器
- 修改spring cloud config 服务地址:ace-config/src/main/resources/application.yml中git地址
- 相对于携程的apollo的配置中心,spring cloud config不是很好用
- 完成用户浏览前端和后端管理的demo
- 完成用户基于token方式登陆
- 增加用户jwt认证
- 集成spring session
- 完成服务无状态权限拦截
- 完成前端和后端权限拦截
- 页面按钮权限显示和隐藏(待完成)
- druid监控集成
- spring boot监控集成
- hystrix监控集成
- 完成动态用户组设计
- 完成动态角色、部门组功能
- 完成角色与用户的关联
- 完成角色与菜单的关联
- 引入boostrap table
- 抽象基础Controller类
- 完成菜单的增删改查和树状
- 多系统菜单切换
- spring security进行统一登录拦截
- 完成后端的UI的选型
- 完成首页改进
- 完成用户模块的增删该查
- 完成前后端分离的模块联通
- 完成监控模块
- 完成spring cloud相关核心组件整合和搭建
- 完成Hello World服务的调用和负载
- 完成网关的初步代理
- 完成监控中心的搭建
相对于1.0的layui,2.0采用了前后端分离的部署方式,前端采用vue-element-admin。AG-Admin-v2