云平台的微服务架构实践

本文是在云平台构建过程中的一些经验总结,主要说明了PaaS层的微服务架构设计和落地。

目标

降低系统的复杂度,减少系统的不确定性。

方法

量化,标准化,自动化。

规范

流程规范

  • 工程创建流程
  • 开发流程
  • 源码管理流程
  • 测试流程
  • 发布流程

设计规范

  • 微服务设计
  • 接口设计
  • 监控设计

代码规范

  • 代码组织
  • 代码开发

工具规范

  • 自动化开发工具
  • 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工具,代码提交后自动构建部署,实现开发和测试环境的自动化运维。具体实践可参考这里
posted @ 2018-09-09 11:41  羽客  阅读(1125)  评论(0编辑  收藏  举报