Skip to content

DataAgg/DAFramework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1d088a9 · May 10, 2017

History

34 Commits
Mar 4, 2017
May 10, 2017
May 10, 2017
May 10, 2017
May 10, 2017
May 9, 2017
May 10, 2017
Feb 9, 2017
Mar 3, 2017
Mar 3, 2017
Mar 13, 2017
May 10, 2017
May 10, 2017

Repository files navigation

DAFramework -- 云南数聚基础框架

DAFramework是云南数聚科技开源的微服务基础框架, 基于Spring-boot, Spring-security, Spring-cloud, Spring-data和Docker构建. 这是一个Spring-cloud的脚手架项目, 提供一些基础服务, 帮助更多的开发人员更快速地构建他们的项目. DAFramework源于PiggyMetrics项目.

基础组件

为何选择DAFramework


  • 基于Spring-boot, Spring-MVC, Spring-security和Spring-cloud构建, 减少用户的学习成本;
  • 基于Docker构建, 帮助开发人员快速实施DevOps;
  • 完整的 微服务体系结构模式(Microservice Architecture Pattern)实现, 更先进的架构设计;
  • 模块化设计,层次结构清晰, 封装重用业务组件, 减少二次开发; 包含服务注册发现、配置中心、智能路由、负载均衡、性能监控、缓存、用户角色权限控制等;
  • 完整的代码生成工具,帮助快速开发新功能,减少重复coding工作;
  • 后端输出纯JSON(可配置为其他格式:XML,protobuf等),方便前后端分离;

基础组件


  • 配置中心: Spring-cloud config server和client
  • 服务注册发现: Spring-cloud NetFlix Eureka
  • 熔断器: Spring-cloud NetFlix Hystrix客户端和Hystrix Dashboard
  • 客户端负载均衡:Spring-cloud NetFlix Ribbon
  • 智能路由: Spring-cloud NetFlix Zuul
  • REST client: Spring-cloud NetFlix Feign
  • 监控系统: Spring-cloud NetFlix Turbine
  • 权限检查: Spring-cloud Security
  • 消息队列代理: Spring-cloud Bus
  • 数据持久化访问: Spring-Data和NutDao
  • 前端技术: ES2015/TypeScript、LESS、VueJs、Vue-router、vux、echarts、axios和EsLint
  • 前端组件:ElementMint-UI和Bootstrap4 grid.css
  • 构建工具: GradleCooking
  • 容器技术: Docker

环境搭建


后端部分

  1. 安装gradle, 去官网下载v3.x版本,并安装;
  2. 在命令行中进入DAFramework目录, 执行以下命令编译打包:
cd DAFramework
gradle bootrepackage
  1. 进入codegen目录, 执行以下命令启动Docker容器:
cd codegen
docker-compose up
  1. 在浏览器中访问系统:

前端部分

  1. 安装nodejs, 去官网下载v7.x版本NodeJs,并安装;
  2. 在命令行下安装cnpm:
npm install -g cnpm --registry=https://registry.npm.taobao.org
  1. 进入web目录,安装相关全局工具和相关依赖:
cd web
cnpm install -g vue-cli webpack eslint gulp cooking-cli
cnpm install
  1. 运行dev开发模式
npm run dev
  1. 运行lint检查代码文件(注:dev模式自动检查,build是也检查,lint一般只是快速检查时使用)
npm run lint
  1. 运行build工具编译生成静态文件(发布时使用)
npm run build

关于我们