【daisy-framework】开发规范

前言

Github:https://github.com/yihonglei/daisy-framework

一 daisy-framework简介

Spring Boot前后端分离,集成MyBatis、数据库、消息中间件、缓存中间件、分布式锁、分布式事务、异步事件、

自定义监控系统、自定义常用基础组件等常用Web开发技术,方便于平时使用时随机摘取。

二 技术架构

开发语言:Java + JDK8

Web框架:Spring Boot

数据库:MySql,druid连接池

ORM框架:MyBatis

缓存中间件:Redis集群模式,MongoDB

消息中间件:RocketMQ

分布式锁:支持Redis、Zookeeper实现

分布式事务:RocketMQ最终一致性,定时任务做双层防护

定时任务:elastic-job(当当分布式)

系统日志:logback,elk

系统监控:sunflower(https://github.com/swordslotus/sunflower)

工程化:idea,Maven,Git,jenkins,Docker&k8s

项目部署:tomcat,linux

三 开发规范

1、项目命名规范

XXX-api提供接口服务,XXX-core为核心业务代码,XXX-common为工程公用代码,如果是后台管理,XXX-api换为XXX-web。

【daisy-framework】开发规范_第1张图片

比如daisy由daisy-api,daisy-core,daisy-common组成。

api负责controller层,对外提供接口;

core负责核心业务、持久层等;

common负责工具包、公用代码等;

2、接口请求规范

json

3、接口响应规范

{
    "code":1, -- 1是成功,0是失败
    "data":返回的数据, -- json或数组等等
    "msg":"提示信息"
}

四 daisy-framework模块说明

1、基础依赖

daisy-parent:基础依赖

2、公共组件

http:daisy-okhttp

redis:daisy-redis-spring-boot-starter

mongodb:daisy-mongodb-spring-boot-starter

rocketmq:daisy-rocketmq-spring-boot-starter

分布式锁:daisy-distributed-lock

......

3、应用服务

daisy核心业务服务,daisy-job定时任务服务等等。

注意:实际应用中基础依赖,公共组件都发布到私服,别人要用直接引用即可。

五 项目构建启动

1、基础组件构建顺序(clean install)

daisy-parent

daisy-rocketmq-spring-boot-starter

daisy-mongodb-spring-boot-starter

daisy-redis-spring-boot-starter

......

2、daisy应用构建(clean install)

daisy-api找到com/jpeony/api/ApiApplication.java,main方法启动即可!

你可能感兴趣的:(设计架构)