沃新书屋 - Spring Cloud Alibaba 微服务架构实战派(上下册)
本书资料更新时间:2025-05-07 15:11:03

Spring Cloud Alibaba 微服务架构实战派(上下册)

Spring Cloud Alibaba 微服务架构实战派(上下册)精美图片

Spring Cloud Alibaba 微服务架构实战派(上下册)书籍详细信息


内容简介:

《Spring Cloud Alibaba 微服务架构实战派(上下册)》覆盖了微服务架构的主要技术点,包括分布式服务治理、分布式配置管理、分布式流量防护、分布式事务处理、分布式消息处理、分布式网关、分布式链路追踪、分布式Job、分库分表、读写分离、分布式缓存、服务注册/订阅路由、全链路蓝绿发布和灰度发布。这些技术点采用“是什么→怎么用→什么原理(源码解析)”的主线来讲解。 为了方便读者在企业中落地Spring Cloud Alibaba项目,本书还包括几个相对完整的项目实战:全链路日志平台、中台架构、数据迁移平台、业务链路告警平台。 《Spring Cloud Alibaba 微服务架构实战派(上下册)》的目标是:①让读者在动手中学习,而不是“看书时好像全明白了,一动手却发现什么都不会”;②读者可以掌握微服务全栈技术,而不仅仅是Spring Cloud Alibaba框架,对于相关的技术(Seata、RocketMQ),基本都是从零讲起,这样避免了读者为了学会微服务技术,得找Spring Cloud Alibaba的书、Seata的书、RocketMQ的书……本书是一站式解决方案。 《Spring Cloud Alibaba 微服务架构实战派(上下册)》适合对微服务架构感兴趣的开发人员。无论读者是否接触过微服务开发,只要具备一定的Java开发基础,都能通过本书的学习快速掌握微服务开发技能,快速搭建出可以在企业中应用的微服务架构。

书籍目录:

入门篇 第1章 进入Spring Cloud Alibaba的世界 2 1.1 了解微服务架构 2 1.1.1 单体架构与微服务架构的区别 2 1.1.2 分布式架构与微服务架构的区别 6 1.2 如何构建微服务架构 8 1.2.1 构建微服务架构的目标 8 1.2.2 构建微服务架构的关键点 8 1.3 认识Spring Cloud Alibaba 11 1.4 学习Spring Cloud Alibaba的建议 12 1.4.1 熟悉Spring Boot 12 1.4.2 熟悉Spring Cloud 13 1.4.3 Spring Cloud Alibaba的版本演进 14 1.5 Spring Cloud Alibaba与Spring Cloud的关系 15 1.6 搭建基础环境 16 1.6.1 安装Maven 16 1.6.2 熟悉Git 18 第2章 熟用开发工具 19 2.1 安装开发工具IntelliJ IDEA 19 2.2 【实例】用Spring Cloud Alibaba开发一个RESTful API服务 20 2.3 了解Spring Framework官方开发工具STS 24 2.4 了解Spring Framework官方脚手架工具 25 基础篇 第3章 Spring Cloud Alibaba基础实战 28 3.1 Spring Cloud Alibaba“牛刀小试” 28 3.1.1 【实例】实现乐观锁 28 3.1.2 【实例】实现多数据源 32 3.1.3 【实例】实现SQL语句中表名的动态替换 35 3.2 【实例】用Maven和Spring Cloud Alibaba实现多环境部署 36 3.2.1 初始化 37 3.2.2 多环境配置 37 3.2.3 构建 38 3.2.4 效果演示 41 3.3 【实例】用“MyBatis-Plus + Spring Cloud Alibaba”实现多租户架构 42 3.3.1 多租户的概念 42 3.3.2 多租户的原理 42 3.3.3 架构 44 3.3.4 搭建及效果演示 46 第4章 分布式服务治理——基于Nacos 48 4.1 认识分布式服务治理 48 4.1.1 什么是分布式服务治理 48 4.1.2 为什么需要分布式服务治理 49 4.2 了解主流的注册中心 50 4.2.1 Nacos 50 4.2.2 ZooKeeper 51 4.2.3 Consul 52 4.2.4 Sofa 53 4.2.5 Etcd 53 4.2.6 Eureka 54 4.2.7 对比Nacos、ZooKeeper、Sofa、Consul、Etcd和Euraka 54 4.3 将应用接入Nacos注册中心 55 4.3.1 【实例】用“Nacos Client + Spring Boot”接入 55 4.3.2 【实例】用Spring Cloud Alibaba Discovery接入 57 4.4 用“NacosNamingService类 + @EnableDiscoveryClient”实现服务的注册/订阅 59 4.4.1 服务注册的原理 59 4.4.2 服务订阅的原理 69 4.4.3 【实例】通过服务幂等性设计验证服务的注册/订阅 74 4.5 用“Ribbon + Nacos Client”实现服务发现的负载均衡 82 4.5.1 为什么需要负载均衡 82 4.5.2 【实例】用“Ribbon + Nacos Client”实现负载均衡 83 4.6 用CP模式和AP模式来保持注册中心的数据一致性 88 4.6.1 了解CAP理论 88 4.6.2 了解Nacos的CP模式和AP模式 89 4.6.3 了解Raft与Soft-Jraft 90 4.6.4 Nacos注册中心AP模式的数据一致性原理 91 4.6.5 Nacos注册中心CP模式的数据一致性原理 96 4.6.6 【实例】用持久化的服务实例来验证注册中心的数据一致性 104 4.7 用缓存和文件来存储Nacos的元数据 106 4.7.1 认识Nacos的元数据 106 4.7.2 用缓存存储Nacos的元数据 108 4.7.3 用文件存储Nacos的元数据 110 4.7.4 【实例】用Spring Cloud Alibaba整合Nacos和Dubbo的元数据 111 4.8 用Nacos Sync来实现应用服务的数据迁移 114 4.8.1 为什么要进行应用服务的数据迁移 115 4.8.2 如何完成应用服务的数据迁移 116 4.8.3 【实例】将Eureka注册中心中的应用服务数据迁移到Nacos注册中心中 117 第5章 分布式配置管理——基于Nacos 122 5.1 认识分布式配置管理 122 5.1.1 什么是分布式配置管理 122 5.1.2 为什么需要分布式配置管理 123 5.2 了解主流的配置中心 124 5.2.1 Nacos 124 5.2.2 Spring Cloud Config 126 5.2.3 Apollo 127 5.2.4 对比Nacos、Spring Cloud Config、Apollo和Disconf 127 5.3 将应用接入Nacos配置中心 128 5.3.1 接入方式 128 5.3.2 认识Nacos配置中心的配置信息模型 128 5.3.3 了解NacosConfigService类 129 5.3.4 【实例】用Nacos Client接入应用 129 5.3.5 【实例】用Open API接入应用 132 5.3.6 【实例】用Spring Cloud Alibaba Config接入应用 134 5.4 用HTTP协议和gRPC框架实现通信渠道 137 5.4.1 什么是gRPC 137 5.4.2 “用HTTP实现Nacos Config通信渠道”的原理 137 5.4.3 “用‘长轮询 + 注册监听器’机制将变更之后的配置信息同步到应用” 的原理 141 5.4.4 “用gRPC框架实现客户端与Nacos Config Server之间通信渠道”的原理 148 5.4.5 【实例】用“采用gRPC通信渠道的Nacos Config”实现配置数据的动态更新 151 5.5 用“Sofa-Jraft + Apache Derby”保证配置中心的数据一致性 152 5.5.1 Nacos配置中心的数据一致性原理 153 5.5.2 【实例】用“切换所连接的Nacos节点”验证数据一致性 159 5.6 用数据库持久化配置中心的数据 161 5.6.1 为什么需要持久化 161 5.6.2 持久化的基础配置 162 5.6.3 持久化的原理 162 5.6.4 【实例】用“配置信息的灰度发布”验证持久化 165 5.7 用“Spring Cloud Alibaba Config + Nacos Config”实现配置管理(公共配置、应用配置和扩展配置) 168 5.7.1 “按照优先级加载属性”的原理 168 5.7.2 【实例】验证公共配置、应用配置和扩展配置的优先级顺序 172 第6章 分布式流量防护——基于Sentinel 175 6.1 认识分布式流量防护 175 6.1.1 什么是分布式流量防护 175 6.1.2 为什么需要分布式流量防护 177 6.2 认识Sentinel 179 6.3 将应用接入Sentinel 180 6.3.1 搭建Sentinel控制台 180 6.3.2 【实例】用Sentinel Core手动地将应用接入Sentinel 181 6.3.3 【实例】用Spring Cloud Alibaba Sentinel将应用接入Sentinel 183 6.4 用HTTP或者Netty实现通信渠道 184 6.4.1 认识NIO框架Netty 184 6.4.2 用SPI机制实现插件化通信渠道的原理 184 6.4.3 “用插件类NettyHttpCommandCenter实现通信渠道”的原理 189 6.4.4 “用SimpleHttpCommandCenter类实现通信渠道”的原理 192 6.4.5 【实例】用Netty实现通信渠道,实现“从应用端到Sentinel控制台的流量控制规则推送” 196 6.5 用过滤器和拦截器实现组件的适配 198 6.5.1 什么是过滤器和拦截器 198 6.5.2 “Sentinel通过过滤器适配Dubbo”的原理 199 6.5.3 “Sentinel通过拦截器适配Spring MVC”的原理 203 6.5.4 【实例】将Spring Cloud Gateway应用接入Sentinel,管理流量控制规则 206 6.6 用“流量控制”实现流量防护 208 6.6.1 什么是流量控制 208 6.6.2 槽位(Slot)的动态加载机制 210 6.6.3 “加载应用运行的监控指标”的原理 214 6.6.4 “用QPS/并发线程数实现流量控制”的原理 216 6.6.5 “用调用关系实现流量控制”的原理 222 6.6.6 【实例】通过控制台实时地修改QPS验证组件的流量防控 224 6.7 用“熔断降级”实现流量防护 227 6.7.1 什么是熔断降级 227 6.7.2 “实现熔断降级”的原理 228 6.7.3 【实例】用“模拟Dubbo服务故障”验证服务调用熔断降级的过程 235 6.8 用“系统自适应保护”实现流量防护 239 6.8.1 什么是“系统自适应保护” 239 6.8.2 “系统自适应保护”的原理 240 6.8.3 【实例】通过调整应用服务的入口流量和负载,验证系统自适应保护 243 6.9 用Nacos实现规则的动态配置和持久化 247 6.9.1 为什么需要“规则的动态配置” 247 6.9.2 为什么需要“规则的持久化” 248 6.9.3 “规则的动态配置”的原理 248 6.9.4 “规则的持久化”的原理 255 6.9.5 【实例】将Dubbo应用接入Sentinel,实现规则的动态配置和持久化 257 中级篇 第7章 分布式事务处理——基于Seata 264 7.1 认识分布式事务 264 7.1.1 什么是分布式事务 264 7.1.2 为什么需要分布式事务 267 7.2 认识Seata 268 7.2.1 Seata的基础概念 268 7.2.2 Seata的事务模式 269 7.3 将应用接入Seata 274 7.3.1 搭建Seata Server的高可用环境 274 7.3.2 【实例】使用seata-spring-boot-starter将应用接入Seata 279 7.3.3 【实例】使用Spring Cloud Alibaba 将应用接入Seata 282 7.4 用Netty实现客户端与服务器端之间的通信渠道 284 7.4.1 “用Netty实现通信渠道的服务器端”的原理 284 7.4.2 “用Netty实现通信渠道的客户端”的原理 289 7.5 用拦截器和过滤器适配主流的RPC框架 295 7.5.1 “用过滤器适配Dubbo”的原理 295 7.5.2 “用拦截器适配gRPC”的原理 297 7.6 用AT模式实现分布式事务 299 7.6.1 “用数据源代理实现AT模式的零侵入应用”的原理 299 7.6.2 “用全局锁实现AT模式第二阶段的写隔离”的原理 304 7.6.3 【实例】搭建Seata的AT模式的环境,并验证AT模式的分布式事务场景 317 7.7 用TCC模式实现分布式事务 327 7.7.1 用GlobalTransactionScanner类扫描客户端,开启TCC动态代理 327 7.7.2 用拦截器TccActionInterceptor校验TCC事务 330 7.7.3 【实例】搭建Seata的TCC模式的环境,并验证TCC模式的分布式事务场景 332 7.8 用XA模式实现分布式事务 343 7.8.1 “用数据源代理实现XA模式的零侵入应用”的原理 343 7.8.2 “用XACore类处理XA模式的事务请求”的原理 350 7.8.3 【实例】搭建Seata的XA模式的客户端运行环境,并验证XA模式的分布式事务回滚的效果 353 7.9 用Saga模式实现分布式事务 362 7.9.1 “用状态机实现Saga模式”的原理 363 7.9.2 【实例】搭建Seata的Saga模式的客户端运行环境,并验证Saga模式的分布式事务场景 367 第8章 分布式消息处理——基于RocketMQ 374 8.1 消息中间件概述 374 8.1.1 什么是消息中间件 374 8.1.2 为什么需要消息中间件 375 8.1.3 认识RocketMQ 376 8.2 搭建RocketMQ的运行环境 379 8.2.1 了解RocketMQ的安装包 379 8.2.2 搭建单Master的单机环境 380 8.2.3 搭建多Master的集群环境 380 8.2.4 搭建单Master和单Slave的集群环境 382 8.2.5 搭建Raft集群环境 384 8.2.6 【实例】用RocketMQ Admin控制台管控RocketMQ 386 8.3 将应用接入RocketMQ 386 8.3.1 【实例】用rocketmq-spring-boot-starter框架将应用接入RocketMQ 387 8.3.2 【实例】用spring-cloud-starter-stream-rocketmq框架将应用接入RocketMQ 389 8.4 用Netty实现RocketMQ的通信渠道 392 8.4.1 用NettyRemotingClient类实现客户端的通信渠道 393 8.4.2 用NettyRemotingServer类实现服务器端的通信渠道 395 8.5 用“异步”“同步”和“最多发送一次”模式生产消息 400 8.5.1 用“异步”模式生产消息的原理 400 8.5.2 用“同步”模式生产消息的原理 403 8.5.3 用“最多发送一次”模式生产消息的原理 405 8.5.4 【实例】在Spring Cloud Alibaba项目中生产同步消息和异步消息 407 8.6 用Push模式和Pull模式消费消息 410 8.6.1 “用Push模式消费消息”的原理 410 8.6.2 “用Pull模式消费消息”的原理 421 8.6.3 【实例】生产者生产消息,消费者用Pull模式和Push模式消费消息 431 8.7 用两阶段提交和定时回查事务状态实现事务消息 437 8.7.1 什么是事务消息 437 8.7.2 两阶段提交的原理 437 8.7.3 定时回查事务状态的原理 447 8.7.4 【实例】在Spring Cloud Aliaba项目中生产事务消息 451 第9章 分布式网关——基于Spring Cloud Gateway 456 9.1 认识网关 456 9.1.1 什么是网关 456 9.1.2 为什么需要网关 457 9.1.3 认识Spring Cloud Gateway 460 9.2 用Reactor Netty实现 Spring Cloud Gateway的通信渠道 463 9.2.1 什么是Reactor Netty 463 9.2.2 “用过滤器代理网关请求”的原理 466 9.3 用“路由规则定位器”(RouteDefinitionLocator)加载网关的路由规则 473 9.3.1 “基于注册中心的路由规则定位器”的原理 473 9.3.2 “基于内存的路由规则定位器”的原理 477 9.3.3 “基于Redis缓存的路由规则定位器”的原理 479 9.3.4 “基于属性文件的路由规则定位器”的原理 480 9.3.5 【实例】用“基于注册中心和配置中心的路由规则定位器”在网关统一暴露API 481 9.4 用“Redis + Lua”进行网关API的限流 487 9.4.1 “网关用Redis + Lua实现分布式限流”的原理 487 9.4.2 【实例】将Spring Cloud Alibaba应用接入网关,用“Redis +Lua”进行限流 494 高级篇 第10章 分布式链路追踪——基于Skywalking 500 10.1 认识分布式链路追踪 500 10.1.1 什么是分布式链路追踪 500 10.1.2 认识Skywalking 502 10.2 搭建Skywalking环境 505 10.2.1 搭建单机环境 505 10.2.2 搭建集群环境 507 10.3 用Java Agent将Spring Cloud Alibaba应用接入Skywalking 511 10.3.1 什么是Java Agent 511 10.3.2 “Skywalking使用Java Agent零侵入应用”的原理 513 10.3.3 【实例】将“基于Spring Cloud Alibaba的服务消费者和服务订阅者”接入Skywalking 517 10.4 用ModuleProvider和ModuleDefine将Skywalking的功能进行模块化设计 520 10.4.1 为什么需要模块化设计 520 10.4.2 Skywalking模块化设计的原理 522 10.4.3 Skywalking启动的原理 529 10.5 用HTTP、gRPC和Kafka实现“应用与Skywalking之间的通信渠道” 532 10.5.1 “基于HTTP实现通信渠道”的原理 532 10.5.2 “基于gRPC实现通信渠道”的原理 535 10.5.3 “基于Kafka实现通信渠道”的原理 541 10.5.4 【实例】搭建Kafka环境,并用异步通信渠道Kafka收集Spring Cloud Alibaba应用的运行链路指标数据 549 10.6 用“注册中心”保证集群的高可用 551 10.6.1 为什么需要注册中心 551 10.6.2 “用注册中心保证集群高可用”的原理 553 10.7 用“分布式配置中心”动态加载集群的配置信息 558 10.7.1 为什么需要分布式配置中心 558 10.7.2 “用配置中心动态加载集群配置信息”的原理 559 10.7.3 【实例】用配置中心动态地修改告警规则 565 10.8 用探针采集链路追踪数据 569 10.8.1 什么是探针 569 10.8.2 Dubbo探针的原理 570 10.8.3 “Skywalking用探针来增强应用代码”的原理 573 10.8.4 【实例】模拟Dubbo服务故障,用Dubbo探针采集链路追踪数据 580 10.9 用Elasticsearch存储链路追踪数据 583 10.9.1 什么是Elasticsearch 583 10.9.2 存储链路追踪指标数据的原理 584 10.9.3 【实例】将Skywalking集群接入Elasticsearch,并采集Spring Cloud Alibaba应用的链路追踪数据 595 第11章 分布式Job——基于Elastic Job 598 11.1 认识分布式Job 598 11.1.1 为什么需要分布式Job 598 11.1.2 认识Elastic Job 602 11.2 将应用接入Elastic Job Lite 604 11.2.1 将应用接入Elastic Job Lite的3种模式 605 11.2.2 搭建Elastic Job Lite的分布式环境 607 11.2.3 【实例】用Spring Boot Starter将Spring Cloud Alibaba应用接入Elastic Job Lite 608 11.3 “实现Elastic Job Lite的本地Job和分布式Job”的原理 611 11.3.1 用Quartz框架实现本地Job 611 11.3.2 用ZooKeeper框架实现分布式Job 621 11.3.3 【实例】在Elastic Job控制台中操控分布式Job 625 11.4 “用SPI将Job分片策略插件化”的原理 627 11.4.1 用SPI工厂类JobShardingStrategyFactory加载分片策略 628 11.4.2 用ShardingService类触发Job去执行分片策略 631 11.4.3 【实例】给Spring Cloud Alibaba应用接入带有分片功能的分布式Job 633 11.5 “实现分布式Job的事件追踪”的原理 636 11.5.1 用基于Guava的事件机制实现分布式Job的事件追踪 636 11.5.2 用数据库持久化分布式Job的运行状态和日志 643 11.5.3【实例】将Spring Cloud Alibaba应用接入Elastic Job,并开启分布式Job的事件追踪 652 第12章 分库分表和读写分离——基于ShardingSphere 655 12.1 认识ShardingSphere 655 12.1.1 什么是分布式数据库 655 12.1.2 什么是ShardingSphere 658 12.2 将应用接入ShardingSphere JDBC 662 12.2.1 用四种模式将应用接入Shardingsphere JDBC 662 12.2.2 【实例】用Spring Boot将应用接入Shardingsphere JDBC并完成分库分表 665 12.3 “用路由引擎实现分库分表”的原理 681 12.3.1 绑定分库分表规则和数据库数据源,并初始化路由引擎 682 12.3.2 拦截SQL语句,并启动路由引擎 689 12.4 “读写分离”的原理 703 12.4.1 读取应用配置文件中的数据库据源及读写分离规则 703 12.4.2 使用ReplicaQuerySQLRouter类的createRouteContext()方法创建读写分离的路由上下文对象RouteContext 704 12.4.3 使用ReplicaQueryRuleSpringbootConfiguration类加载应用的负载均衡器ReplicaLoadBalanceAlgorithm对象 706 12.5 用Netty实现Shardingsphere Proxy的通信渠道 708 12.5.1 “Shardingsphere Proxy通信渠道”的原理 708 12.5.2【实例】搭建通信渠道环境,将Spring Cloud Alibaba应用接Shardingsphere Proxy 711 12.6 “使用SQL解析引擎实现Shardingsphere Proxy分库分表”的原理 715 12.6.1 为什么需要SQL解析引擎 715 12.6.2 使用命令设计模式实现SQL语句的路由 716 12.6.3 “使用MySQLComStmtPrepareExecutor类处理SQL请求”的原理 723 12.6.4 “使用MySQLComStmtExecuteExecutor类处理SQL请求”的原理 731 第13章 分布式缓存——基于Redis 741 13.1 认识缓存 741 13.1.1 什么是本地缓存 741 13.1.2 什么是分布式缓存 743 13.1.3 什么是Redis 745 13.1.4 Redis的整体架构 746 13.2 搭建Redis集群环境 747 13.2.1 搭建主从环境 747 13.2.2 搭建Sentinel集群环境 751 13.2.3 搭建Codis集群环境 756 13.2.4 搭建Cluster集群环境 769 13.3 将Spring Cloud Alibaba应用接入Redis 775 13.3.1 【实例】集成spring-boot-starter-data-redis,将Spring Cloud Alibaba应用接入Redis主从环境 775 13.3.2 【实例】集成redisson-spring-boot-starter,将Spring Cloud Alibaba应用接入Redis Sentinel环境 778 13.3.3 【实例】集成Jedis,将Spring Cloud Alibaba应用接入Redis Codis集群环境 782 13.3.4 【实例】集成Lettuce,将Spring Cloud Alibaba应用接入Redis Cluster集群环境 785 13.4 “用分布式缓存Redis和Redisson框架实现分布式锁”的原理 789 13.4.1 什么是分布式锁 789 13.4.2 初始化RedissonClient并连接Redis的服务器端 791 13.4.3 “用Redisson框架的RedissonLock类实现分布式锁”的原理 798 13.4.4 【实例】在Spring Cloud Alibaba应用中验证分布式锁的功能 806 第14章 服务注册/订阅路由、全链路蓝绿发布和灰度发布——基于Discovery 815 14.1 认识服务注册/订阅路由、蓝绿发布和灰度发布 815 14.1.1 什么是服务注册路由、服务订阅路由 816 14.1.2 什么是蓝绿发布 816 14.1.3 什么是灰度发布 817 14.1.4 认识微服务治理框架Discovery 819 14.2 “用插件机制来集成主流的注册中心和配置中心”的原理 822 14.2.1 集成主流的注册中心 822 14.2.2 集成主流的配置中心 827 14.3 “用Open API和配置中心动态变修改规则”的原理 828 14.3.1 用Open API动态修改规则 829 14.3.2 用配置中心动态修改规则 834 14.3.3 【实例】在Spring Cloud Alibaba应用中用Nacos配置中心变更规则,并验证规则动态变更的效果 839 14.4 “用服务注册/订阅实现服务的路由”的原理 842 14.4.1 用“服务注册的前置处理和注册监听器”实现基于服务注册的服务路由 843 14.4.2 用“服务订阅前置处理 + 注册监听器”实现基于服务订阅的服务路由 849 14.4.3 【实例】在Spring Cloud Alibaba应用中配置服务注册的路由规则 858 14.4.4 【实例】在Spring Cloud Alibaba应用中配置服务订阅的路由规则 860 14.5 “用路由过滤器实现全链路的蓝绿发布和灰度发布”的原理 866 14.5.1 用路由过滤器适配 Spring Cloud Gateway网关 866 14.5.2 用路由过滤器适配 RESTful API 869 14.5.3 【实例】在Spring Cloud Alibaba应用中配置全链路灰度发布的规则, 并验证全链路灰度发布的效果 871 14.5.4 【实例】在Spring Cloud Alibaba应用中配置全链路蓝绿发布的规则, 并验证全链路蓝绿发布的效果 879 项目实战篇 第15章【项目】全链路日志平台——基于ELK、FileBeat、Kafka、Spring Cloud Alibaba及Skywalking 886 15.1 全链路日志平台整体架构 886 15.2 搭建环境 887 15.3 将Spring Cloud Alibaba应用接入全链路日志平台 890 15.3.1 将微服务接入全链路日志平台 890 15.3.2 使用全链路日志平台查询业务日志 891 第16章 【项目】在企业中落地中台架构 893 16.1 某跨境支付公司中台架构 893 16.1.1 跨境支付中台架构 893 16.1.2 跨境支付用户中台架构 895 16.2 某娱乐直播公司中台架构 896 16.2.1 泛娱乐直播中台架构 896 16.2.2 直播用户中台架构 899 16.3 用“服务双写和灰度发布”来实现中台服务上线过程中的“业务方零停机时间” 902 16.3.1 服务双写架构 902 16.3.2 服务灰度发布架构 903 第17章 【项目】异构数据迁移平台——基于DataX 905 17.1 搭建环境 905 17.1.1 软件环境 905 17.1.2 搭建MySQL的异构数据迁移环境 906 17.2 搭建控制台 909 17.2.1 构建部署包 909 17.2.2 用部署包搭建后台管理系统datax-admin 910 17.2.3 用部署包搭建任务执行器datax-executor 911 17.2.4 使用可视化控制台执行MySQL异构数据迁移 911 17.3 在Spring Cloud Alibaba应用中用DataX完成异构数据迁移 916 第18章【项目】业务链路告警平台——基于Spring Cloud Alibaba、Nacos和Skywalking 922 18.1 告警平台的整体架构设计 922 18.2 告警服务详细设计 924 18.2.1 产品化部署设计 925 18.2.2 Nacos服务健康告警设计 926 18.2.3 Skywalking链路错误告警设计 927 18.2.4 Skywalking的指标告警设计 928 18.2.5 RocketMQ消息堆积告警设计 928 18.3 分析告警服务的部分源码 929 18.3.1 用分布式Job类NacosAlarmHealthJob实现Nacos服务健康告警 929 18.3.2 用分布式Job类SkywalkingErrorAlarmJob实现Skywalking链路错误告警 931 18.4 将电商微服务接入告警平台,验证告警平台的实时告警功能 932 18.4.1 启动告警平台的软件环境 932 18.4.2 在购买商品时,在下单过程中验证实时告警功能 933 18.4.3 在购买商品时,在支付过程中验证实时告警功能 936

作者简介:

胡弦 2012年毕业于杭州电子科技大学自动化学院,硕士研究生。 一名工作10年的IT老兵,曾就职于网易、连连支付等企业。 从Java工程师开始,一路“打怪升级”成为“独角兽”公司的高级技术专家、资深架构师和技术负责人,是一名技术狂热爱好者。 个人微信公众号“架构治理之道”。

其它内容:

暂无其它内容!


下载点评

  • 过期(1118+)
  • 超预期(173+)
  • 职场(888+)
  • 三星好评(252+)
  • 学术性强(566+)
  • 可听读(100+)
  • 考证(589+)
  • 兴趣(516+)
  • 实用(848+)
  • 流畅(888+)
  • 系统(798+)
  • 带书签(1057+)
  • 考研(453+)
  • 强推(464+)
  • 如获至宝(680+)
  • 修订(338+)
  • 精校(913+)

下载评论

  • 用户1728944150: ( 2024-10-15 06:15:50 )

    音频版电子书下载流畅,支持EPUB/MOBI格式导出,值得收藏。

  • 用户1718881347: ( 2024-06-20 19:02:27 )

    无损的小说资源,双语设计提升阅读体验,值得收藏。

  • 用户1725991682: ( 2024-09-11 02:08:02 )

    流畅下载EPUB/TXT文件,优质期刊推荐收藏,体验良好。

  • 冉***兮: ( 2024-10-31 16:11:41 )

    如果满分一百分,我愿意给你99分,剩下一分怕你骄傲

  • 用户1740820186: ( 2025-03-01 17:09:46 )

    希望优化排版,提升阅读体验。


相关书评