全部商品分类

您现在的位置: 全部商品分类 > 电子电脑 > 计算机技术 > 硬件及维护

微服务架构原理与开发实战

  • 定价: ¥95
  • ISBN:9787121408601
  • 开 本:16开 平装
  •  
  • 折扣:
  • 出版社:电子工业
  • 页数:339页
  • 作者:编者:张刚|责编:...
  • 立即节省:
  • 2021-05-01 第1版
  • 2021-05-01 第1次印刷
我要买:
点击放图片

导语

  

内容提要

  

    最近几年软件开发方法层出不穷,微服务作为一种主流的架构模式一直热度不减。为了帮助广大程序员们更好更快地理解微服务的概念,学习微服务在项目中的实践,本书全面阐述了微服务架构模式的特点、架构思路、设计理念、技术框架及具体的代码实战,以软件开发过程中遇到的各种疑难问题为切入点,逐步解析微服务架构是如何设计及解决这些问题的。
    书中使用主流技术框架进行演示,采用通俗易懂的图例和真实的项目事例来阐述遇到问题时的解决思路和做法,并附有具体的实践演示,读者可以跟随本书进行代码试验,理解并运用微服务技术架构的原理,了解微服务的适应场景和优势。
    本书实用性强,是目前市面上关于微服务实践方面介绍得较为全面的书籍之一,适合想要了解和学习微服务的初、高级程序员和架构师等不同水平的读者阅读。

目录

第1章  微服务概述
  1.1  微服务的概念
  1.2  微服务与SOA
    1.2.1  SOA的定义
    1.2.2  微服务与SOA的异同点
    1.2.3  服务调用设计
  1.3  单体式架构
    1.3.1  单体式架构概述
    1.3.2  单体式架构的痛点
    1.3.3  经典的MVC架构模式
  1.4  微服务架构概述
    1.4.1  微服务能解决的问题
    1.4.2  微服务架构的特点
    1.4.3  微服务架构的优势
  1.5  微服务的挑战
    1.5.1  使用微服务的难点
    1.5.2  微服务不是银弹
第2章  微服务架构设计
  2.1  微服务架构的难点
  2.2  架构设计
    2.2.1  了解什么才是架构
    2.2.2  软件设计的3个阶段
    2.2.3  软件架构的目的与方法
  2.3  微服务的核心组件
    2.3.1  微服务的远程调用方式
    2.3.2  HTTP通信方法
    2.3.3  服务的注册与发现
    2.3.4  负载均衡
第3章  Spring Cloud相关组件
  3.1  统一配置中心
    3.1.1  配置中心的难点
    3.1.2  Spring Cloud Config框架
    3.1.3  集成消息总线
  3.2  断路器
    3.2.1  服务熔断
    3.2.2  服务降级
    3.2.3  线程隔离
    3.2.4  请求合并
    3.2.5  请求缓存
    3.2.6  Hystrix注解
    3.2.7  Hystrix控制台
  3.3  健康监控
  3.4  分布式链路跟踪
    3.4.1  设计要素和术语
    3.4.2  Spring Cloud Sleuth链路监控
第4章  契约测试
  4.1  契约测试概述
  4.2  契约测试与TDD
    4.2.1  TDD的定义
    4.2.2  TDD的价值
    4.2.3  TDD的种类
    4.2.4  契约测试也是TDD
  4.3  契约测试与独立交付
    4.3.1  独立交付
    4.3.2  集成测试
    4.3.3  真正的独立交付
  4.4  契约测试的相关技术与用法实战
    4.4.1  Mock测试
    4.4.2  消费者驱动的契约测试Pact
    4.4.3  Spring家族契约测试Spring Cloud Contract
    4.4.4  服务提供者的契约测试Moscow
第5章  API网关
  5.1  API网关的意义
  5.2  API网关的职责
    5.2.1  请求路由
    5.2.2  请求过滤
    5.2.3  服务治理
  5.3  API网关的缺点
  5.4  使用API网关认证身份
    5.4.1  分清认证与授权
    5.4.2  API网关是否需要管理授权
    5.4.3  传统的Cookie和Session认证
    5.4.4  基于JSON的令牌JWT
  5.5  API网关技术实战
    5.5.1  Zuul网关
    5.5.2  Spring Cloud Gateway
    5.5.3  Spring Security
    5.5.4  Java-JWT
第6章  BFF用于前端的后端
  6.1  回顾前后端分离发展史
    6.1.1  日渐臃肿的前端
    6.1.2  前端技术栈大爆发
    6.1.3  前后端分离的必然性
    6.1.4  分离后的挑战
  6.2  BFF诞生
    6.2.1  BFF的概念
    6.2.2  BFF的适用场景
    6.2.3  BFF模式
  6.3  基于RESTful的BFF
  6.4  基于GraphQL的BFF
    6.4.1  GraphQL的概念
    6.4.2  GraphQL在客户端的基本用法
    6.4.3  GraphQL与Java集成
    6.4.4  GraphQL与WebFlux集成
第7章  领域驱动设计
  7.1  如何划分微服务
    7.1.1  微服务的划分方式
    7.1.2  DDD与服务划分
  7.2  领域驱动设计概述
    7.2.1  DDD的概念
    7.2.2  DDD解决了什么问题
    7.2.3  DDD适合小项目吗
    7.2.4  为了统一语言
  7.3  领域和子域
  7.4  领域事件
    7.4.1  领域事件的定义
    7.4.2  事件风暴
    7.4.3  用户旅程与事件风暴
  7.5  聚合和聚合根
  7.6  限界上下文
  7.7  六边形架构
  7.8  DDD的挑战
第8章  Docker和K8s
  8.1  虚拟化技术
  8.2  Docker容器化
    8.2.1  Docker的概念
    8.2.2  容器的概念
  8.3  学习使用Docker
    8.3.1  Docker的安装方法
    8.3.2  构建Docker镜像
    8.3.3  运行Docker容器
    8.3.4  了解Docker的网络
    8.3.5  日志监控的利器ELK
  8.4  容器编排
    8.4.1  容器为什么需要编排
    8.4.2  Kubernetes的概念
    8.4.3  K8s的设计理念
    8.4.4  K8s的命名空间
    8.4.5  K8s与Docker
    8.4.6  K8s与Docker Swarm
  8.5  云商的支持
第9章  持续集成、部署与交付
  9.1  持续集成(CI)
    9.1.1  传统的系统集成
    9.1.2  持续集成的概念
    9.1.3  微服务的CI
  9.2  持续交付(CD)
    9.2.1  CD的概念
    9.2.2  DevOps与持续交付
    9.2.3  软件质量门
  9.3  持续部署(CD)
    9.3.1  生产环境部署的难点
    9.3.2  蓝绿部署
    9.3.3  滚动部署
    9.3.4  灰度发布
  9.4  CI/CD工具
    9.4.1  Jenkins
    9.4.2  GoCD概述
    9.4.3  DevOps概述
第10章  任务管理
  10.1  任务管理概述
    10.1.1  如何解决任务互斥
    10.1.2  任务调度平台
  10.2  实战演练
    10.2.1  Quartz
    10.2.2  XXL-JOB
第11章  事务管理
  11.1  事务概述
  11.2  CAP理论
  11.3  BASE理论
  11.4  解决方案
    11.4.1  基于可靠消息的事务管理
    11.4.2  两段提交事务
    11.4.3  TCC模式事务管理
  11.5  对账是最后的屏障
第12章  传统架构的微服务转型之路
  12.1  传统架构转型的难点
  12.2  识别领域与界限
  12.3  分块重构法
  12.4  代理隔离法
  12.5  转型不是一蹴而就的