注重体验与质量的电子书资源下载网站
分类于: 互联网 其它
简介
分布式消息中间件实践 豆 6.2分
资源最后更新于 2020-09-23 15:16:58
作者:倪炜
出版社:电子工业出版社
出版日期:2018-01
ISBN:9787121349058
文件格式: pdf
标签: 中间件 分布式 Mq 计算机 消息队列 消息中间件 架构 技术
简介· · · · · ·
消息中间件是分布式系统中的重要组件,在实际工作中常用消息中间件进行系统间数据交换,从而解决应用解耦、异步消息、流量削峰等问题,实现高性能、高可用、可伸缩和最终一致性架构。目前市面上可供选择的消息中间件有RabbitMQ、ActiveMQ、Kafka、RocketMQ、ZeroMQ、MetaMQ 等。《分布式消息中间件实践》结合作者近年来在实际项目中使用消息中间件的经历和踩过的一些坑总结整理而成,主要介绍消息中间件使用的背景、基本概念,以及常用的四种消息中间件产品在各个业务场景中的使用案例。作为案例介绍,虽然不能对各种消息中间件产品的所有特性做详细说明,但是希望读者可以通过每章中的案例讨论和实践建议得到启发,为在实际工作中进行产品选型、业务场景方案制定、性能调整等提供思路。
《分布式消息中间件实践》适合初、中级软件工程师阅读,不管是有一定工作经验的软件...
目录
第1 章 消息队列 1
1.1 系统间通信技术介绍 1
1.2 为何要用消息队列 2
1.3 消息队列的功能特点 6
1.4 设计一个简单的消息队列 8
1.4.1 消息处理中心 9
1.4.2 客户端访问 12
第2 章 消息协议 16
2.1 AMQP 17
2.2 MQTT 22
2.3 STOMP 31
2.4 XMPP 37
2.5 JMS 48
第3 章 RabbitMQ 59
3.1 简介 59
3.2 工程实例 63
3.2.1 Java 访问RabbitMQ 实例 63
3.2.2 Spring 整合RabbitMQ 67
3.2.3 基于RabbitMQ 的异步处理 69
3.2.4 基于RabbitMQ 的消息推送 75
3.3 RabbitMQ 实践建议 80
3.3.1 虚拟主机 80
3.3.2 消息保存 81
3.3.3 消息确认模式 83
3.3.4 消费者应答 84
3.3.5 流控机制 87
3.3.6 通道 88
3.3.7 总结 88
第4 章 ActiveMQ 89
4.1 简介 89
4.2 工程实例 95
4.2.1 Java 访问ActiveMQ 实例 95
4.2.2 Spring 整合ActiveMQ 100
4.2.3 基于ActiveMQ 的消息推送 108
4.2.4 基于ActiveMQ 的分布式事务 113
4.3 ActiveMQ 实践建议 136
4.3.1 消息转发模式 136
4.3.2 消息积压 137
4.3.3 消息事务 139
4.3.4 消息应答模式 140
4.3.5 消息发送优化 141
4.3.6 消息消费优化 142
4.3.7 消息协议 145
4.3.8 消息持久化 147
第5 章 Kafka 148
5.1 简介 148
5.2 工程实例 150
5.2.1 Java 访问Kafka 实例 150
5.2.2 Spring 整合Kafka 154
5.2.3 基于Kafka 的用户行为数据采集 158
5.2.4 基于Kafka 的日志收集 174
5.2.5 基于Kafka 的流量削峰 177
5.3 Kafka 实践建议 191
5.3.1 分区 191
5.3.2 复制 192
5.3.3 消息发送 193
5.3.4 消费者组 196
5.3.5 消费偏移量 197
第6 章 RocketMQ 201
6.1 简介 201
6.2 工程实例 206
6.2.1 Java 访问RocketMQ 实例 206
6.2.2 Spring 整合RocketMQ 211
6.2.3 基于RocketMQ 的消息顺序处理 219
6.2.4 基于RocketMQ 的分布式事务 234
6.3 RocketMQ 实践建议 261
6.3.1 消息重试 261
6.3.2 消息重复 264
6.3.3 集群 266
6.3.4 顺序消息 270
6.3.5 定时消息 270
6.3.6 批量发送消息 271
6.3.7 事务消息 274
1.1 系统间通信技术介绍 1
1.2 为何要用消息队列 2
1.3 消息队列的功能特点 6
1.4 设计一个简单的消息队列 8
1.4.1 消息处理中心 9
1.4.2 客户端访问 12
第2 章 消息协议 16
2.1 AMQP 17
2.2 MQTT 22
2.3 STOMP 31
2.4 XMPP 37
2.5 JMS 48
第3 章 RabbitMQ 59
3.1 简介 59
3.2 工程实例 63
3.2.1 Java 访问RabbitMQ 实例 63
3.2.2 Spring 整合RabbitMQ 67
3.2.3 基于RabbitMQ 的异步处理 69
3.2.4 基于RabbitMQ 的消息推送 75
3.3 RabbitMQ 实践建议 80
3.3.1 虚拟主机 80
3.3.2 消息保存 81
3.3.3 消息确认模式 83
3.3.4 消费者应答 84
3.3.5 流控机制 87
3.3.6 通道 88
3.3.7 总结 88
第4 章 ActiveMQ 89
4.1 简介 89
4.2 工程实例 95
4.2.1 Java 访问ActiveMQ 实例 95
4.2.2 Spring 整合ActiveMQ 100
4.2.3 基于ActiveMQ 的消息推送 108
4.2.4 基于ActiveMQ 的分布式事务 113
4.3 ActiveMQ 实践建议 136
4.3.1 消息转发模式 136
4.3.2 消息积压 137
4.3.3 消息事务 139
4.3.4 消息应答模式 140
4.3.5 消息发送优化 141
4.3.6 消息消费优化 142
4.3.7 消息协议 145
4.3.8 消息持久化 147
第5 章 Kafka 148
5.1 简介 148
5.2 工程实例 150
5.2.1 Java 访问Kafka 实例 150
5.2.2 Spring 整合Kafka 154
5.2.3 基于Kafka 的用户行为数据采集 158
5.2.4 基于Kafka 的日志收集 174
5.2.5 基于Kafka 的流量削峰 177
5.3 Kafka 实践建议 191
5.3.1 分区 191
5.3.2 复制 192
5.3.3 消息发送 193
5.3.4 消费者组 196
5.3.5 消费偏移量 197
第6 章 RocketMQ 201
6.1 简介 201
6.2 工程实例 206
6.2.1 Java 访问RocketMQ 实例 206
6.2.2 Spring 整合RocketMQ 211
6.2.3 基于RocketMQ 的消息顺序处理 219
6.2.4 基于RocketMQ 的分布式事务 234
6.3 RocketMQ 实践建议 261
6.3.1 消息重试 261
6.3.2 消息重复 264
6.3.3 集群 266
6.3.4 顺序消息 270
6.3.5 定时消息 270
6.3.6 批量发送消息 271
6.3.7 事务消息 274