本文是在云平台构建过程当中的一些经验总结,主要说明了PaaS层的微服务架构设计和落地。html
目标
下降系统的复杂度,减小系统的不肯定性。数据库
方法
量化,标准化,自动化。架构
规范
流程规范
- 工程建立流程
- 开发流程
- 源码管理流程
- 测试流程
- 发布流程
设计规范
代码规范
工具规范
- 自动化开发工具
- CI/CD工具
- 单元测试工具
- 代码质量管理工具
- 自动化测试工具
架构实践
标准化业务层次
梳理业务体系和服务能力,将PaaS平台分层。运维
- 聚合领域服务能力的应用服务层
- 提供基本数据访问能力的领域服务层

标准化治理方式
统一使用标准化的微服务治理组件,规范微服务工程模板和领域模型。微服务
a, 治理组件
- Registry: Eureka(服务发现)和Spring Cloud Config(统一配置);
- UAA: User Accout and Authentication(统一身份验证);
- Monitor:ELK(日志监控)。
b, 工程模板
- JHipster标准的工程模板
- JHipster标准的领域模型

标准化集成单元
一个标准化集成单元包括应用网关,应用微服务,领域网关,领域微服务,数据库等。工具
- 领域微服务(Domain Service)
- 领域网关(Domain Gateway)
- 应用微服务(Application Service)
- 应用网关(Application Gateway)
- 数据库(DB)

自动化标准工做
- 经过自动化工具,自动生成标准化代码,提升开发效率和代码质量。具体实践可参考这里。
- 经过DevOps工具,代码提交后自动构建部署,实现开发和测试环境的自动化运维。具体实践可参考这里。