微服务架构实战

微服务架构实战
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2018-06
版次: 1
ISBN: 9787121343421
定价: 89.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 408页
字数: 490千字
正文语种: 简体中文
  • 本书从大型网站的架构设计模式以及技术造型着手,以Spring Cloud和Docker为构建框架,实现横向可扩展的高可用架构。项目分层清晰,包括完备的质量和监控体系。依据敏捷开发的原则,快速迭代,以完整的示例实现整个CI/CD的流程,快速响应需求。在本书的最后,会精选在项目中应用的几个开源框架,以期读者能够在阅读完本书后,快速掌握并应用微服务相关的知识。 张锋,北京航空航天大学软件工程硕士,资深架构师,有十多年管理和架构经验,在业界颇具威望和影响力。 
    曾就职于神州数据、亚信科技、中文在线及多家互联网公司,担任架构师及技术总监等职位,现在就职于中青旅,任架构组组长,曾成功管理和指导过三农综合服务信息平台、西北企业云服务平台、省级电信平台及多个互联网平台的架构升级改造。 
    拥有工信部认证高级信息系统项目管理师资格。 

    目录
    第1章 微服务概述
    1.1 什么是微服务
    1.2 为什么微服务
    1.2.1 区别
    1.2.2 从单体应用说起
    1.2.3 第一步切分
    1.2.4 服务化所带来的问题
    1.2.5 微服务的可扩展性
    1.2.6 微服务与SOA的区别
    1.3 常见的微服务组件
    1.4 常用的微服务框架
    1.4.1 Spring顶级项目
    1.4.2 背景
    1.4.3 社区活跃度
    1.4.4 架构完整度
    1.4.5 总结
    1.5 微服务架构设计模式
    1.6 如何实施微服务
    1.7 小结
    第2章 微服务设计原则
    2.1 设计原则之分层架构
    2.2 设计原则之统一通信协议
    2.3 设计原则之单一职责
    2.4 设计原则之服务拆分
    2.5 设计原则之前后端分离
    2.6 设计原则之版本控制
    2.7 设计原则之围绕业务构建
    2.8 设计原则之并发流量控制
    2.9 设计原则之CAP
    2.10 设计原则之EDA事件驱动
    2.11 设计原则之CQRS
    2.12 设计原则之基础设施自动化
    2.13 设计原则之数据一致性
    2.14 设计原则之设计模式
    2.15 设计原则之DevOps
    2.16 设计原则之无状态服务
    2.17 小结
    第3章 微服务之Spring Boot
    3.1 一切从简单开始
    3.2 快速集成第三方的Starter
    3.3 降低开发复杂度之面向切面
    3.3.1 前置通知
    3.3.2 后置返回通知
    3.3.3 后置异常通知
    3.3.4 后置最终通知
    3.3.5 环绕通知
    3.3.6 AOP总结
    3.4 并不复杂的持久化
    3.4.1 单数据源
    3.4.2 多数据源
    3.4.3 JOOQ
    3.4.4 事务处理
    3.4.5 整合Redis
    3.4.6 整合队列
    3.4.7 操作MongoDB
    3.5 Web开发
    3.6 懒人的接口文档管理
    3.7 优化的调度
    3.8 健康是永恒的主题
    3.9 强强联合之整合Dubbo
    3.10 小结
    第4章 微服务之Docker
    4.1 Docker原理
    4.2 更轻量级的虚拟化
    4.3 三个概念理解Docker
    4.3.1 镜像(Image)
    4.3.2 容器(Container)
    4.3.3 仓库(Repository)
    4.4 Dockerfile定制一切
    4.4.1 Dockerfile语法
    4.4.2 Dockerfile命令
    4.4.3 Dockerfile构建过程
    4.4.4 构建Java环境
    4.4.5 Dockerfile小结
    4.5 Docker网络
    4.5.1 网络模式
    4.5.2 link
    4.5.3 跨主机访问
    4.6 Docker数据卷
    4.6.1 数据卷
    4.6.2 数据卷容器
    4.7 Spring Boot与Docker
    4.8 搭建自己的镜像仓库
    4.8.1 安装和启动
    4.8.2 使用
    4.9 Kubernetes
    4.10 私有云整体架构
    4.11 小结
    第5章 微服务之Spring Cloud
    5.1 注册中心
    5.1.1 常用的注册中心
    5.1.2 Eureka介绍
    5.1.3 服务发现
    5.1.4 简单注册
    5.2 负载均衡
    5.2.1 Spring Cloud的负载实现
    5.2.2 Ribbon
    5.2.3 Feign
    5.2.4 加入core
    5.3 微服务容错(Hystrix)
    5.3.1 雪崩的形成
    5.3.2 应对方案
    5.3.3 降级和熔断
    5.3.4 Hystrix
    5.3.5 集中监控
    5.4 分布式配置中心
    5.5 API网关
    5.5.1 为什么需要网关
    5.5.2 Zuul
    5.6 消息总线(Spring Cloud Bus)
    5.7 小结
    第6章 微服务之Spring Cloud其他框架
    6.1 Spring Cloud Consul
    6.2 Spring Cloud ZooKeeper
    6.3 Spring Cloud archaius
    6.4 Spring Cloud Task
    6.5 Spring Cloud Security
    6.5.1 HTTP Basic Authentication
    6.5.2 JWT
    6.5.3 OAuth 2
    6.5.4 Spring Cloud Security
    6.6 Spring Cloud Sleuth
    6.6.1 服务端
    6.6.2 客户端
    6.7 Spring Cloud Stream
    6.8 Spring Cloud Data Flow
    6.9 小结
    第7章 微服务之自动化测试与质量管理
    7.1 微服务测试
    7.2 单元测试
    7.2.1 单元测试及覆盖率评估
    7.2.2 JUnit
    7.2.3 Spring Boot单元测试
    7.2.4 Mockito
    7.3 API测试
    7.3.1 Jmeter
    7.3.2 压力测试
    7.4 A/B测试
    7.5 冒烟和回归测试
    7.6 静态代码分析
    7.6.1 Checkstyle
    7.6.2 FindBugs
    7.6.3 PMD
    7.7 SonarQube质量监控
    7.7.1 为什么使用
    7.7.2 安装和使用
    7.7.3 安装插件
    7.7.4 运行流程
    7.8 小结
    第8章 微服务之JHipster
    8.1 JHipster技术列表
    8.1.1 客户端选项
    8.1.2 服务端选项
    8.1.3 部署选项
    8.2 Angular简介
    8.3 快速开始JHipster
    8.3.1 安装
    8.3.2 使用
    8.3.3 构建单体应用
    8.3.4 Entity sub-generator
    8.3.5 开发和运行
    8.3.6 插件安装
    8.4 目录结构
    8.5 构建微服务应用
    8.5.1 注册中心
    8.5.2 创建微服务网关
    8.5.3 Traefik
    8.5.4 JHipster UAA
    8.5.5 构建微服务应用
    8.6 基础配置
    8.6.1 JHipster属性配置
    8.6.2 作为Maven项目
    8.6.3 数据库
    8.6.4 DTO
    8.6.5 分页
    8.6.6 文档
    8.7 小结
    第9章 微服务之自动化部署
    9.1 私有仓库搭建
    9.1.1 Nexus介绍
    9.1.2 安装与配置
    9.1.3 在项目中使用
    9.2 Ansible
    9.3 持续集成
    9.3.1 持续集成流程
    9.3.2 Jenkins介绍与安装
    9.3.3 Maven介绍
    9.3.4 Jenkins系统设置
    9.3.5 集成Sonar
    9.3.6 构建工程
    9.3.7 配置测试
    9.4 灰度发布
    9.5 小结
    第10章 微服务之日志收集与监控
    10.1 ELK搜集与分析
    10.1.1 工作流程
    10.1.2 日志格式
    10.1.3 平台搭建
    10.2 系统监控
    10.2.1 监控策略和监控对象
    10.2.2 进程监控
    10.2.3 数据波动监控
    10.2.4 常用监控命令
    10.3 运维监控
    10.3.1 Zabbix
    10.3.2 Open-Falcon
    10.4 APM监控
    10.4.1 Pinpoint
    10.4.2 SkyWalking
    10.4.3 Zipkin
    10.4.4 CAT
    10.5 Pinpoint的安装与使用
    10.5.1 Pinpoint的安装
    10.5.2 Pinpoint的使用
    10.5.3 Pinpoint实现邮件告警
    10.6 小结
    第11章 完整示例
    11.1 安装Lombok
    11.2 PiggyMetrics
    11.3 整体架构
    11.3.1 配置Spring Cloud Config
    11.3.2 授权服务
    11.3.3 API网关
    11.3.4 服务发现
    11.3.5 负载均衡器、断路器和HTTP客户端
    11.3.6 监控仪表盘
    11.3.7 日志分析
    11.4 安装和运行
    11.4.1 配置Maven并导入工程
    11.4.2 安装
    11.4.3 使用
    11.4.4 如何变成自己的项目
    11.5 小结
    第12章 微服务核心功能推荐
    12.1 工作流引擎
    12.1.1 Activiti
    12.1.2 UFLO
    12.2 规则引擎
    12.2.1 Drools
    12.2.2 URule
    12.3 调度系统
    12.4 消息推送
    12.5 网关中间件
    12.5.1 Orange
    12.5.2 Kong
    12.5.3 Zuul
    12.6 分库分表中间件
    12.6.1 Sharding-JDBC
    12.6.2 MyCat
    12.7 报表引擎
    12.8 数据处理
    12.8.1 Spring Batch
    12.8.2 Kettle
    12.9 并发编程
    12.10 分布式配置
    12.10.1 Disconf
    12.10.2 Apollo
    12.11 CAS
    12.12 WebFlux
    12.13 小结
  • 内容简介:
    本书从大型网站的架构设计模式以及技术造型着手,以Spring Cloud和Docker为构建框架,实现横向可扩展的高可用架构。项目分层清晰,包括完备的质量和监控体系。依据敏捷开发的原则,快速迭代,以完整的示例实现整个CI/CD的流程,快速响应需求。在本书的最后,会精选在项目中应用的几个开源框架,以期读者能够在阅读完本书后,快速掌握并应用微服务相关的知识。
  • 作者简介:
    张锋,北京航空航天大学软件工程硕士,资深架构师,有十多年管理和架构经验,在业界颇具威望和影响力。 
    曾就职于神州数据、亚信科技、中文在线及多家互联网公司,担任架构师及技术总监等职位,现在就职于中青旅,任架构组组长,曾成功管理和指导过三农综合服务信息平台、西北企业云服务平台、省级电信平台及多个互联网平台的架构升级改造。 
    拥有工信部认证高级信息系统项目管理师资格。 

  • 目录:
    目录
    第1章 微服务概述
    1.1 什么是微服务
    1.2 为什么微服务
    1.2.1 区别
    1.2.2 从单体应用说起
    1.2.3 第一步切分
    1.2.4 服务化所带来的问题
    1.2.5 微服务的可扩展性
    1.2.6 微服务与SOA的区别
    1.3 常见的微服务组件
    1.4 常用的微服务框架
    1.4.1 Spring顶级项目
    1.4.2 背景
    1.4.3 社区活跃度
    1.4.4 架构完整度
    1.4.5 总结
    1.5 微服务架构设计模式
    1.6 如何实施微服务
    1.7 小结
    第2章 微服务设计原则
    2.1 设计原则之分层架构
    2.2 设计原则之统一通信协议
    2.3 设计原则之单一职责
    2.4 设计原则之服务拆分
    2.5 设计原则之前后端分离
    2.6 设计原则之版本控制
    2.7 设计原则之围绕业务构建
    2.8 设计原则之并发流量控制
    2.9 设计原则之CAP
    2.10 设计原则之EDA事件驱动
    2.11 设计原则之CQRS
    2.12 设计原则之基础设施自动化
    2.13 设计原则之数据一致性
    2.14 设计原则之设计模式
    2.15 设计原则之DevOps
    2.16 设计原则之无状态服务
    2.17 小结
    第3章 微服务之Spring Boot
    3.1 一切从简单开始
    3.2 快速集成第三方的Starter
    3.3 降低开发复杂度之面向切面
    3.3.1 前置通知
    3.3.2 后置返回通知
    3.3.3 后置异常通知
    3.3.4 后置最终通知
    3.3.5 环绕通知
    3.3.6 AOP总结
    3.4 并不复杂的持久化
    3.4.1 单数据源
    3.4.2 多数据源
    3.4.3 JOOQ
    3.4.4 事务处理
    3.4.5 整合Redis
    3.4.6 整合队列
    3.4.7 操作MongoDB
    3.5 Web开发
    3.6 懒人的接口文档管理
    3.7 优化的调度
    3.8 健康是永恒的主题
    3.9 强强联合之整合Dubbo
    3.10 小结
    第4章 微服务之Docker
    4.1 Docker原理
    4.2 更轻量级的虚拟化
    4.3 三个概念理解Docker
    4.3.1 镜像(Image)
    4.3.2 容器(Container)
    4.3.3 仓库(Repository)
    4.4 Dockerfile定制一切
    4.4.1 Dockerfile语法
    4.4.2 Dockerfile命令
    4.4.3 Dockerfile构建过程
    4.4.4 构建Java环境
    4.4.5 Dockerfile小结
    4.5 Docker网络
    4.5.1 网络模式
    4.5.2 link
    4.5.3 跨主机访问
    4.6 Docker数据卷
    4.6.1 数据卷
    4.6.2 数据卷容器
    4.7 Spring Boot与Docker
    4.8 搭建自己的镜像仓库
    4.8.1 安装和启动
    4.8.2 使用
    4.9 Kubernetes
    4.10 私有云整体架构
    4.11 小结
    第5章 微服务之Spring Cloud
    5.1 注册中心
    5.1.1 常用的注册中心
    5.1.2 Eureka介绍
    5.1.3 服务发现
    5.1.4 简单注册
    5.2 负载均衡
    5.2.1 Spring Cloud的负载实现
    5.2.2 Ribbon
    5.2.3 Feign
    5.2.4 加入core
    5.3 微服务容错(Hystrix)
    5.3.1 雪崩的形成
    5.3.2 应对方案
    5.3.3 降级和熔断
    5.3.4 Hystrix
    5.3.5 集中监控
    5.4 分布式配置中心
    5.5 API网关
    5.5.1 为什么需要网关
    5.5.2 Zuul
    5.6 消息总线(Spring Cloud Bus)
    5.7 小结
    第6章 微服务之Spring Cloud其他框架
    6.1 Spring Cloud Consul
    6.2 Spring Cloud ZooKeeper
    6.3 Spring Cloud archaius
    6.4 Spring Cloud Task
    6.5 Spring Cloud Security
    6.5.1 HTTP Basic Authentication
    6.5.2 JWT
    6.5.3 OAuth 2
    6.5.4 Spring Cloud Security
    6.6 Spring Cloud Sleuth
    6.6.1 服务端
    6.6.2 客户端
    6.7 Spring Cloud Stream
    6.8 Spring Cloud Data Flow
    6.9 小结
    第7章 微服务之自动化测试与质量管理
    7.1 微服务测试
    7.2 单元测试
    7.2.1 单元测试及覆盖率评估
    7.2.2 JUnit
    7.2.3 Spring Boot单元测试
    7.2.4 Mockito
    7.3 API测试
    7.3.1 Jmeter
    7.3.2 压力测试
    7.4 A/B测试
    7.5 冒烟和回归测试
    7.6 静态代码分析
    7.6.1 Checkstyle
    7.6.2 FindBugs
    7.6.3 PMD
    7.7 SonarQube质量监控
    7.7.1 为什么使用
    7.7.2 安装和使用
    7.7.3 安装插件
    7.7.4 运行流程
    7.8 小结
    第8章 微服务之JHipster
    8.1 JHipster技术列表
    8.1.1 客户端选项
    8.1.2 服务端选项
    8.1.3 部署选项
    8.2 Angular简介
    8.3 快速开始JHipster
    8.3.1 安装
    8.3.2 使用
    8.3.3 构建单体应用
    8.3.4 Entity sub-generator
    8.3.5 开发和运行
    8.3.6 插件安装
    8.4 目录结构
    8.5 构建微服务应用
    8.5.1 注册中心
    8.5.2 创建微服务网关
    8.5.3 Traefik
    8.5.4 JHipster UAA
    8.5.5 构建微服务应用
    8.6 基础配置
    8.6.1 JHipster属性配置
    8.6.2 作为Maven项目
    8.6.3 数据库
    8.6.4 DTO
    8.6.5 分页
    8.6.6 文档
    8.7 小结
    第9章 微服务之自动化部署
    9.1 私有仓库搭建
    9.1.1 Nexus介绍
    9.1.2 安装与配置
    9.1.3 在项目中使用
    9.2 Ansible
    9.3 持续集成
    9.3.1 持续集成流程
    9.3.2 Jenkins介绍与安装
    9.3.3 Maven介绍
    9.3.4 Jenkins系统设置
    9.3.5 集成Sonar
    9.3.6 构建工程
    9.3.7 配置测试
    9.4 灰度发布
    9.5 小结
    第10章 微服务之日志收集与监控
    10.1 ELK搜集与分析
    10.1.1 工作流程
    10.1.2 日志格式
    10.1.3 平台搭建
    10.2 系统监控
    10.2.1 监控策略和监控对象
    10.2.2 进程监控
    10.2.3 数据波动监控
    10.2.4 常用监控命令
    10.3 运维监控
    10.3.1 Zabbix
    10.3.2 Open-Falcon
    10.4 APM监控
    10.4.1 Pinpoint
    10.4.2 SkyWalking
    10.4.3 Zipkin
    10.4.4 CAT
    10.5 Pinpoint的安装与使用
    10.5.1 Pinpoint的安装
    10.5.2 Pinpoint的使用
    10.5.3 Pinpoint实现邮件告警
    10.6 小结
    第11章 完整示例
    11.1 安装Lombok
    11.2 PiggyMetrics
    11.3 整体架构
    11.3.1 配置Spring Cloud Config
    11.3.2 授权服务
    11.3.3 API网关
    11.3.4 服务发现
    11.3.5 负载均衡器、断路器和HTTP客户端
    11.3.6 监控仪表盘
    11.3.7 日志分析
    11.4 安装和运行
    11.4.1 配置Maven并导入工程
    11.4.2 安装
    11.4.3 使用
    11.4.4 如何变成自己的项目
    11.5 小结
    第12章 微服务核心功能推荐
    12.1 工作流引擎
    12.1.1 Activiti
    12.1.2 UFLO
    12.2 规则引擎
    12.2.1 Drools
    12.2.2 URule
    12.3 调度系统
    12.4 消息推送
    12.5 网关中间件
    12.5.1 Orange
    12.5.2 Kong
    12.5.3 Zuul
    12.6 分库分表中间件
    12.6.1 Sharding-JDBC
    12.6.2 MyCat
    12.7 报表引擎
    12.8 数据处理
    12.8.1 Spring Batch
    12.8.2 Kettle
    12.9 并发编程
    12.10 分布式配置
    12.10.1 Disconf
    12.10.2 Apollo
    12.11 CAS
    12.12 WebFlux
    12.13 小结
查看详情
12
相关图书 / 更多
微服务架构实战
微服务开发实战
[美]保罗·奥斯曼 著;邓彪 译
微服务架构实战
微服务实战
[英]摩根·布鲁斯(Morgan Bruce);保罗·A.佩雷拉
微服务架构实战
微服务与容器
[美]帕敏德·辛格·科克(Parminder Singh Kocher)
微服务架构实战
微服务架构设计模式
[美]克里斯·理查森(Chris Richardson)
微服务架构实战
微服务从小白到专家――SpringCloud和Kubernetes实战
姚秋辰、张昕、卿睿 著
微服务架构实战
微服务架构原理与开发实战
张刚
微服务架构实战
微服务架构深度解析:原理、实践与进阶
王佩华
微服务架构实战
微服务中台架构开发
任波 著
微服务架构实战
微服务之道:度量驱动开发
范亚敏 、傅 健 编著
微服务架构实战
微服务与事件驱动架构
[加]亚当·贝勒马尔(Adam Bellemare) 著;温正东 译
微服务架构实战
微服务追踪与监控:Zipkin、Jaeger、Prometheus详解
田雪松 著
微服务架构实战
微服务SpringBoot实战(面向高等职业院校基于工作过程项目式系列教材)
王新强、张明宇 编