工程结构
在约定git工程建设前 先来规范一下工程之间的关系
- 数据服务:
数据持久化操作,业务逻辑实现。
以数据结构低耦合度为唯一拆分标准。在一般性能影响的情况下采用冗余,在十分性能影响的情况下考虑合并。
与数据库一一对应;数据服务之间允许相互调用,但要规避分布式事务,多用异步拆解耦合。 - web服务:
是人机交互数据的处理层,使用统一的sso控制登录信息。
允许调用多个数据服务,但web服务之间不允许相互调用。
在刚起步阶段可以只建一个web服务,以简化开发。 - 前端:
从作用角度看是web服务的一部分,但由于近几年的前端技术的发展变得越来越复杂,因此拆分出来,主要负责交互体验功能。因此与web服务是一一对应的。 - 开放平台:
统一第三方程序的服务入口。 - 服务之间的调用使用dubbo
工程命名规范
- 数据服务
工程名:数据库名_ds
一级目录:数据库名_ds、数据库名_api - web服务
工程名:产品名
一级目录:产品名_front、产品名_fe
代码分支管理规范
项目开发
- 开发 从 dev 切 feature,分支名:YYYYMMDD
- 测试通过后 feature 合并到 dev
- 从dev切 release,分支名:YYYYMMDD
- 测试通过并上线完毕后 release合并到 dev & master
线上bug
-- 从master 且 hotfix,分支名:YYYYMMDD
-- 测试通过并上线完毕后 hotfix合并到 dev & master