# AG-Admin
AG-Admin是国内首个基于`Spring Cloud`微`服务`化`开发平台`,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用Eureka、Fegin、Ribbon、Zuul、Hystrix、`JWT Token`、Mybatis等主要框架和中间件,前端采用`vue-element-admin`组件。
## 推荐🌧
考虑许多码友对于Spring Cloud的前后端分离和微服务实战有较多的疑问。老A专门录制课程如下,便于对AG-Admin更深入的了解
- 课程地址:
http://edu.csdn.net/course/detail/5840
### QQ群号:169824183
## AG线上最新体验地址,感谢【[千铭云](https://www.chanmir.com/?u=45433C)】赞助的服务器。
http://43.248.136.159:9999/
## [老A专属优惠链接](https://www.chanmir.com/?u=45433C),优惠卷:2B3158
![img](http://upload-images.jianshu.io/upload_images/5700335-002735d1727ec11b.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
---------
# 更新日志
### 2017年11月17日 v2.2-SNARSHOT
- ace-admin集成`ace-cache`
- ace-auth集成`rabbitmq`
# 模块说明
![img](http://upload-images.jianshu.io/upload_images/5700335-5ceb4c68e4080107.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
### 架构详解
#### 服务鉴权
老A独有的通过`JWT`的方式来加强服务之间调度的权限验证,保证内部服务的安全性。
#### 监控
利用Spring Boot Admin 来监控各个独立Service的运行状态;利用Hystrix Dashboard来实时查看接口的运行状态和调用频率等。
#### 负载均衡
将服务保留的rest进行代理和网关控制,除了平常经常使用的node.js、nginx外,Spring Cloud系列的zuul和rebbion,可以帮我们进行正常的网关管控和负载均衡。其中扩展和借鉴国外项目的扩展基于JWT的`Zuul限流插件`,方面进行限流。
#### 服务注册与调用
基于Eureka来实现的服务注册与调用,在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。
#### 熔断机制
因为采取了服务的分布,为了避免服务之间的调用“雪崩”,采用了`Hystrix`的作为熔断器,避免了服务之间的“雪崩”。
------
# 启动指南
## 须知
因为AG-Admin是一个`前后端分离`的项目,所以后端的服务必须先启动,在后端服务启动完成后,再启动前端的工程。
## 最多人问:代码有漏
下载完后端代码后,记得先安装`lombok插件`,否则你的IDE会报代码缺失。
## 后端工程启动
### 环境须知
- mysql一个,redis一个,rabbitmq一个
- jdk1.8
- IDE插件一个,`lombok插件`,具体百度即可
### 运行步骤
- 运行数据库脚本:依次运行数据库:ace-admin/db/init.sql、ace-auth-server/db/init.sql
- 修改配置数据库配置:ace-admin/src/main/resources/application.yml、ace-gate/src/main/resources/application.yml
- 按`顺序`运行main类:CenterBootstrap(ace-center)、ConfigServerBootstrap(ace-config)、AdminBootstrap(ace-admin)、AuthBootstrap(ace-auth-server)、GateBootstrap(ace-gate)
### 项目结构
```
├─ace-security
│ │
│ ├─ace-admin----------------管理端服务层
│ │
│ ├─ace-auth-----------------鉴权中心
│ │
│ ├─ace-gate-----------------网关负载中心
│ │
│ ├─ace-center---------------服务注册中心
│ │
│ ├─ace-monitor--------------统一监控中心
│ │
│ ├─ace-config---------------统一配置中心
│ │
│ └─ace-api------------------公共服务接口包
│ │
│ └─ace-sidebar--------------调用第三方语言
│
```
----
## 前端工程启动[AG-Admin-UI][地址](https://gitee.com/geek_qi/AG-Admin-v2.0)
### 环境搭建
```
node 版本:v6.11.2
npm 版本:3.10.10
```
### 开发
```bash
# 安装依赖
npm install
//or # 建议不要用cnpm 安装有各种诡异的bug 可以通过如下操作解决npm速度慢的问题
npm install --registry=https://registry.npm.taobao.org
# 本地开发 开启服务
npm run dev
```
浏览器访问 http://localhost:9527
### 发布
```bash
# 发布测试环境 带webpack ananalyzer
npm run build:sit-preview
# 构建生成环境
npm run build:prod
```
### 目录结构
```shell
├── build // 构建相关
├── config // 配置相关
├── src // 源代码
│ ├── api // 所有请求
│ ├── assets // 主题 字体等静态资源
│ ├── components // 全局公用组件
│ ├── directive // 全局指令
│ ├── filtres // 全局filter
│ ├── mock // mock数据
│ ├── router // 路由
│ ├── store // 全局store管理
│ ├── styles // 全局样式
│ ├── utils // 全局公用方法
│ ├── view // view
│ ├── App.vue // 入口页面
│ └── main.js // 入口 加载组件 初始化等
├── static // 第三方不打包资源
│ └── Tinymce // 富文本
├── .babelrc // babel-loader 配置
├── eslintrc.js // eslint 配置项
├── .gitignore // git 忽略项
├── favicon.ico // favicon图标
├── index.html // html模板
└── package.json // package.json
```
------------
# 功能简介
![img](http://upload-images.jianshu.io/upload_images/5700335-94d83ae2906db34f.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
-----
## 功能截图
### 基本功能
![img](http://upload-images.jianshu.io/upload_images/5700335-e5e56924aaeacf1e.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![img](http://upload-images.jianshu.io/upload_images/5700335-b3044673b4a55203.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![img](http://upload-images.jianshu.io/upload_images/5700335-75151a17ae4319cf.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![img](http://upload-images.jianshu.io/upload_images/5700335-ab942829c130389e.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![img](http://upload-images.jianshu.io/upload_images/5700335-30e6df679695f150.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![img](http://upload-images.jianshu.io/upload_images/5700335-347e3e761188a824.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![img](http://upload-images.jianshu.io/upload_images/5700335-569696e4e70e5ad2.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
## License
Apache License Version 2.0
# 郑重声明
## 虽然本产品是开源产品,但未经本人允许擅自申请专利,将公开追究法律责任。
# 我们的用户
![img](http://upload-images.jianshu.io/upload_images/5700335-67814644d39fce24.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)![image.png](http://upload-images.jianshu.io/upload_images/5700335-a6f45909f94ab3b8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![NLDCF.png](https://s1.ax1x.com/2017/10/24/NLDCF.png)
没有合适的资源?快使用搜索试试~ 我知道了~
AG-Admin 2.0 项目源码
共936个文件
js:159个
java:156个
class:151个
需积分: 48 7 下载量 111 浏览量
2019-02-16
11:40:54
上传
评论
收藏 2.82MB RAR 举报
温馨提示
自己搭建并测试可以跑的AG-Admin项目,包括前端与后端项目。 https://git.oschina.net/geek_qi/AG-Config.git: Authentication is required but no CredentialsProvider has been registered 这个错误可以不用理,主要是配置文件在git上无访问权限。不会影响使用,403错误,可以调高gate的限流。
资源推荐
资源详情
资源评论
收起资源包目录
AG-Admin 2.0 项目源码 (936个子文件)
npm-debug.log.3365733778 0B
.babelrc 129B
AdminAccessFilter.class 11KB
ReflectionUtils.class 10KB
PermissionService.class 9KB
GroupBiz.class 9KB
RateLimitFilter.class 8KB
MybatisConfiguration.class 7KB
GroupController.class 7KB
MenuController.class 7KB
User.class 6KB
BaseBiz.class 6KB
RateLimitProperties.class 6KB
Menu.class 6KB
Group.class 5KB
DBClientService.class 5KB
Client.class 5KB
ResourceAuthority.class 5KB
Element.class 5KB
ServiceAuthUtil.class 5KB
ElementController.class 5KB
GroupType.class 5KB
BaseController.class 4KB
SwaggerConfiguration.class 4KB
RsaKeyHelper.class 4KB
JWTHelper.class 4KB
AuthController.class 4KB
RateLimitProperties$Policy.class 3KB
EntityUtils.class 3KB
ServiceAuthRestInterceptor.class 3KB
Rate.class 3KB
MenuBiz.class 3KB
DBLog.class 3KB
UserAuthRestInterceptor.class 3KB
WebConfig.class 3KB
BaseServiceImpl.class 3KB
AuthServiceImpl.class 3KB
BaseContextHandler.class 3KB
MenuTree.class 3KB
BaseContextHandler$UnitTest.class 3KB
RedisConfiguration.class 3KB
AbstractRateLimiter.class 3KB
UserBiz.class 2KB
ElementBiz.class 2KB
TableResultResponse.class 2KB
AuthorityMenuTree.class 2KB
UserController.class 2KB
RedisRateLimiter.class 2KB
TreeUtil.class 2KB
AuthRemoteEvent.class 2KB
AdminAccessFilter$1.class 2KB
GateLog.class 2KB
RateLimitAutoConfiguration.class 2KB
ListRestResponse.class 2KB
ServiceFeignInterceptor.class 2KB
FrontUser.class 2KB
FrontUser.class 2KB
LogInfo.class 2KB
UserPrincipal.class 2KB
RateLimitAutoConfiguration$RedisConfiguration.class 2KB
ServiceAuthConfig.class 2KB
GlobalExceptionHandler.class 2KB
UUIDUtils.class 2KB
UserRest.class 2KB
UserAuthUtil.class 2KB
ParameterRequestWrapper.class 2KB
MapperConfiguration.class 2KB
JWTInfo.class 2KB
JwtTokenUtil.class 2KB
TableResultResponse$TableData.class 2KB
GateBootstrap.class 2KB
ClientTokenUtil.class 2KB
ClientController.class 2KB
RateLimitAutoConfiguration$SpringDataConfiguration.class 2KB
ClientTokenInterceptor.class 2KB
UserInfo.class 2KB
ObjectRestResponse.class 2KB
AdminAccessFilter$2.class 2KB
RateLimitProperties$Policy$Type.class 2KB
PermissionInfo.class 2KB
LogRest.class 2KB
RateLimitProperties$Repository.class 1KB
AdminBootstrap.class 1KB
Query.class 1KB
TreeNode.class 1KB
SpringDataRateLimiter.class 1KB
GateLogBiz.class 1KB
GroupUsers.class 1KB
BaseException.class 1KB
UserAuthConfig.class 1KB
InMemoryRateLimiter.class 1KB
AutoConfiguration.class 1KB
CommonConstants.class 1KB
DruidStatFilter.class 1KB
CommonConstants.class 1KB
ClientInfo.class 1KB
RateLimitAutoConfiguration$InMemoryConfiguration.class 1KB
AuthBootstrap.class 1KB
JwtAuthenticationRequest.class 1KB
ClientUtil.class 1KB
共 936 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
ling812
- 粉丝: 1
- 资源: 17
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功