RabbitMQ实战:高效部署分布式消息队列

RabbitMQ实战:高效部署分布式消息队列
作者:
汪佳南
译者:
汪佳南
语言:
中文
类型:
EPUB
页数:
332页
大小:
13.91 MB
出版社:
电子工业出版社
出版时间:
2015-10-01
ISBN:
9787121271649
分类:

内容简介

本书对RabbitMQ做了全面、翔实的讲解,体现了两位专家的真知灼见。
本书首先介绍了有关MQ的历史,然后从基本的消息通信原理讲起,带领读者一路探索RabbitMQ的消息通信世界。
这当中不仅包含了针对单台RabbitMQ服务器和RabbitMQ集群的讲解,还教导读者如何使用各种工具来进行监控。

本书内容浅显易懂,文笔风趣幽默。
书中包含了丰富的、可以运行的示例程序源代码,读者可以自行下载并运行,这种亲身实践有助于加深对相关主题的理解。
对于初学者来说,这样的编排非常适用。
对于那些有一定RabbitMQ使用经验的读者来说,本书不仅可以巩固消息通信基本原理,同时也可加深对RabbitMQ高级特性的理解,譬如如何编写RabbitMQ插件。
相信处于RabbitMQ探索之旅不同阶段的读者都能从本书获益。

本书适合有一定工作经验的开发者或者架构师阅读,也可以作为RabbitMQ运维工作的参考手册。

作者简介

Alvaro Videla是一名专门从事基于MQ应用程序的开发者和架构师。

Jason J.W. Williams是消息通信服务供应商DigiTar公司的CTO,他领导着设计与开发工作。

目录

第1章 天降奇兵 1
1.1 住在别人的地下城堡 3
1.2 救世主AMQP 5
1.3 RabbitMQ简史 5
1.4 百里挑一 8
1.5 在UNIX系统上安装RabbitMQ 8
1.5.1 为什么环境很重要–生活在Erlang 的世界里 9
1.5.2 获取安装包 9
1.5.3 设置文件夹结构 9
1.5.4 首次运行Rabbit 10
1.6 总结 12
第2章 理解消息通信13
2.1 消费者和生产者(这可不是经济学课程哦) 14
2.2 从底部开始构造:队列 17
2.3 联合起来:交换器和绑定 22
2.4 多租户模式:虚拟主机和隔离 27
2.5 我的消息去哪儿了呢?持久化和你的策略 28
2.6 把所有内容结合起来:一条消息的一生 32
2.7 使用发送方确认模式来确认投递 37
2.8 总结 40
第3章 运行和管理Rabbit 42
3.1 服务器管理 43
3.1.1 启动节点 43
3.1.2 停止节点 45
3.1.3 关闭和重启应用程序:有何差别 46
3.1.4 Rabbit 配置文件 46
3.2 请求许可 48
3.2.1 管理用户 49
3.2.2 Rabbit 的权限系统 50
3.3 检查 54
3.3.1 查看数据统计 54
3.3.2 理解RabbitMQ 日志 59
3.4 修复Rabbit:疑难解答 63
由badrpc、nodedown 和其他Erlang 引起的问题 63
3.5 总结 68
第4章 解决Rabbit相关问题:编码与模式69
4.1 解耦风雨路:谁将我们推向消息通信 70
4.1.1 异步状态思维(分离请求和动作) 70
4.1.2 提供扩展性:没有负载均衡器的世界 73
4.1.3 零成本API :语言不应成为枷锁 73
4.2 发后即忘模型 74
4.2.1 发送告警 75
4.2.2 并行处理 84
4.3 别忘了:用RabbitMQ实现RPC并等待响应 92
4.3.1 私有队列和发送确认 93
4.3.2 使用reply_to 来实现简单的JSON RPC 93
4.4 总结 98
第5章 集群并处理失败99
5.1 开足马力:RabbitMQ集群 100
5.2 集群架构 101
5.2.1 集群中的队列 101
5.2.2 分布交换器 103
5.2.3 是内存节点还是磁盘节点 104
5.3 在你的笔记本电脑上设置集群 106
5.4 将节点分布到更多的机器上 110
5.5 升级集群节点 114
5.6 镜像队列和保留消息 115
5.6.1 声明并使用镜像队列 115
5.6.2 镜像队列工作原理 118
5.7 总结 120
第6章 从故障中恢复121
6.1 为Rabbit做负载均衡 122
6.1.1 安装HAProxy 124
6.1.2 配置HAProxy 125
6.2 连接丢失和故障转移 127
6.3 总结 134
第7章 warren和Shovel:故障转移和复制 135
7.1 warren:另一种集群方式 136
7.2 设定负载均衡器–基于主/从的集群 138
7.3 远距离通信和复制 142
7.3.1 给Rabbit 装备Shovel :Shovel 插件介绍 142
7.3.2 安装Shovel 145
7.3.3 配置并运行Shovel 146
7.4 总结 152
第8章 从Web端管理RabbitMQ 154
8.1 超越rabbitmqctl:RabbitMQ Management插件 155
8.1.1 为何需要Management 插件 155
8.1.2 Management 插件功能 155
8.1.3 启用Management 插件 156
8.2 从Web控制台来管理RabbitMQ 158
8.2.1 监控Erlang VM 158
8.2.2 从JSON 文件导入配置 159
8.3 从Web控制台管理用户 160
8.3.1 创建用户 161
8.3.2 管理用户的权限 162
8.4 从Web控制台管理交换器和队列 163
8.4.1 列出队列信息 165
8.4.2 创建队列 166
8.5 回到命令行 168
8.5.1 为什么需要另一个CLI 168
8.5.2 CLI 管理:一种更简单的方式 170
8.5.3 安装rabbitmqadmin 脚本 170
8.5.4 清空队列、创建交换器等 171
8.6 总结 172
第9章 使用REST API控制Rabbit 173
9.1 能用RabbitMQ REST API做什么 175
9.2 对客户端授权访问 177
9.3 访问数据统计 178
9.4 自动化vhost和用户配置 181
9.5 总结 .186
第10章 监控187
10.1 监控RabbitMQ:密切关注你的warren 188
10.1.1 为Nagios 编写健康检测 188
10.1.2 使用AMQP 模拟检测来确认RabbitMQ 是否运行 190
10.1.3 使用REST API 来检测 193
10.1.4 监控配置文件修改 196
10.1.5 监控集群状态 201
10.2 确保消费者正常工作 206
10.2.1 通过AMQP 监控队列等级 208
10.2.2 使用REST API 来监控队列级别 212
10.2.3 建立队列的消息计数基准经验法则 215
10.3 总结216
第11章 提升性能,保障安全217
11.1 对速度的需求 218
11.1.1 消息持久化 218
11.1.2 消息确认 219
11.1.3 路由算法和绑定规则 219
11.1.4 投递消息 221
11.2 内存使用率和进程限制 223
11.2.1 内存使用率 223
11.2.2 Erlang 进程计数 226
11.3 SSL连接 ..227
11.3.1 SSL 证书.228
11.3.2 设置证书颁发机构 ..229
11.3.3 生成根证书 233
11.3.4 生成服务器端证书 234
11.3.5 生成客户端证书 235
11.3.6 启用RabbitMQ 的SSL 监听器 236
11.3.7 测试你的RabbitMQ SSL 设置 237
11.4 总结 239
第12章 聪明的Rabbit:扩展RabbitMQ241
12.1 RabbitMQ插件 242
12.1.1 你可以用插件做什么 242
12.1.2 在哪里可以找到插件 244
12.1.3 安装插件 244
12.1.4 移除插件 245
12.2 制作你自己的插件 247
12.2.1 获取RabbitMQ Public Umbrella 248
12.2.2 设置文件夹结构 249
12.2.3 包含插件构建系统 250
12.2.4 创建Erlang 应用文件 250
12.3 创建自定义交换器模块 252
12.3.1 将交换器注册到RabbitMQ 254
12.3.2 实现交换器behaviour 257
12.3.3 编译自定义交换器 264
12.3.4 测试你的插件 267
12.4 总结 271
附录A 在Java和.NET上使用Rabbit 273
附录B 在线资源302
附录C 在Windows上安装RabbitMQ 307

下载权限
查看
  • 免费下载
    评论并刷新后下载
    登录后下载
  • {{attr.name}}:
您当前的等级为
登录后免费下载登录 小黑屋反思中,不准下载! 评论后刷新页面下载评论 支付以后下载 请先登录 您今天的下载次数(次)用完了,请明天再来 支付积分以后下载立即支付 支付以后下载立即支付 您当前的用户组不允许下载升级会员
您已获得下载权限 您可以每天下载资源次,今日剩余
免责申明
1. 本站分享的所有书籍均来源于自互联网,我们只进行收集整理,并不对书籍内容进行更改。
2. 部分书籍中可能有书籍压制者放置的广告,这并不是本站所为,请注意甄别。
3. 我们分享这些书籍,纯粹是出于知识分享的热情,以及对互联网分享精神的高度认同和践行,不以盈利为目的。
4. 本站分享的所有书籍,仅供个人学习研究使用,请勿用于任何商业用途,否则产生的一切法律纠纷与本站无关。
5. 如果这些书籍让你有所收获,在条件允许的情况下,请一定购买正版书籍,这是对创作者最好的支持。
6. 如果您是此书籍的版权所有者,且您不希望此作品出现在本站,请联系我们,我们将在收到您的请求后48小时内予以删除。

📖 支持知识自由流动

每一本书的稳定访问,都离不开服务器、存储与带宽的长期维护。

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索