YK-iSystem后台管理系统介绍
YK-iSystem(还在开发阶段, 文档会不断更新。。。)
YK-iSystem是基于Spring Cloud微服务化的开发平台, 具有统一授权,认证后台管理系统,包含用户管理, 系统管理, 权限管理,网关API管理等多个模块。其中还整合activiti工作流, Netty实时聊天信息, 阿里云OSS存储, Quarz定时任务, MQ消息队列, ES等多种当前热门技术点, 代码清晰, 简洁, 适合学习可直接在项目中使用。后端核心框架采用Spring Boot 2.1.2, Spring Cloud(Finchley.RELEASE)相关核心组件, 集成流量监控Sentinel, 前端采用vue-element-admin组件。
体验地址:
系统构造图
技术摘要
服务认证鉴权
该系统采用Spring Security Oauth2 支持多种方式授权登录(密码,授权码等), 将token存入redis方便处理。使用Spring Security可以更加细化的管理权限, 精确到每一个api接口.
服务监控
项目使用Spring Cloud全家桶开发分布式微服务,所以使用 Spring Cloud Admin 来监控各个独立微服务的运行情况, 使用Hystrix Dashboard查看服务的调用状态以及频率
网关, 负载均衡, 代理
使用Spring Cloud Zuul来进行网关管理, 包括限流, 黑白名单,并处理统一认证。在前端使用node.js, nginx进行服务的代理与负载均衡。
服务注册于发现
使用Spring Cloud Feign来进行服务注册,我们可以利用Feign做到Http请求远程服务就像调用本地方法一样。Spring Cloud Eureka进行服务发现。
服务熔断
由于分布式特点,如果服务出现问题, 使用Spring Cloud Hystrix作为熔断器,能够更好的处理问题服务。
技术选型
后端技术:
名称 | 技术 | 官网 |
---|---|---|
容器框架 | Spring Boot 2.1.2 && Spring Cloud(Finchley.RELEASE) | |
项目构建管理 | Maven | |
鉴权框架 | Spring Security Oauth2 | |
缓存 | Redis | |
ORM框架 | Mybatis | |
代码生成 | 使用Velocity引擎自己开发的模板 | |
分页插件 | PageHelper | |
分布式缓存 | Redis | |
全文搜索 | ElasticSearch | |
任务调度 | Quartz | |
消息队列 | RabbitMQ | |
文件系统 | fastDFS && aliyun OSS | |
接口测试 | Swagger2 | |
实时聊天推送 | Netty |
前端技术:
名称 | 技术 | 官网 |
---|---|---|
后台管理系统模板 | vue-element-admin | |
SocketIO插件 | socker.io.js | |
富文本编辑器 | Tinymce |