RabbitMQ 实战 高效部署分布式消息队列 PDF 文档
绝大多数应用程序的核心都有一个虚拟交换机,用于在服务器、程序和服务之间快速传递消息。RabbitMQ 是一个高效且易于部署的消息队列服务器,它可以轻而易举地处理各种情形下的消息通信,不论是网络初创公司还是大型企业系统。
本书能够教会你如何使用 RabbitMQ 消息通信服务器,构建和管理用不同语言编写的可伸缩应用。这很容易上手。你将学习消息队列的工作原理以及 RabbitMQ 是如何适用的。然后,你将通过许多案例来探索实践当中的可扩展性和互操作性问题。最后,你将学习如何将 Rabbit 打造成一部运作良好的机器,以应对 24×7×365 的无间断工作环境。
本书包以下内容
- 学习基本消息通信设计模式
- 使用模式来满足按需扩展
- 整合 PHP 编写的前端和用任何语言编写的后端
- 在 30 分钟内实现发布/订阅的告警服务
- 配置 RabbitMQ 内建集群
- 监控、管理、扩展并调试 RabbitMQ
前言
目录
第 1 章 天降奇兵
1.1 住在别人的地下城堡
1.2 救世主 AMQP
1.3 RabbitMQ 简史
1.4 百里挑一
1.5 在 UNIX 系统上安装 RabbitMQ
1.5.1 为什么环境很重要--生活在 Erlang 的世界里
1.5.2 获取安装包
1.5.3 设置文件夹结构
1.5.4 首次运行 Rabbit
1.6 总结
第 2 章 理解消息通信
2.1 消费者和生产者(这可不是经济学课程哦)
2.2 从底部开始构造:队列
2.3 联合起来:交换器和绑定
2.4 多租户模式:虚拟主机和隔离
2.5 我的消息去哪儿了呢?持久化和你的策略
2.6 把所有内容结合起来:一条消息的一生
2.7 使用发送方确认模式来确认投递
2.8 总结
第 3 章 运行和管理 Rabbit
3.1 服务器管理
3.1.1 启动节点
3.1.2 停止节点
3.1.3 关闭和重启应用程序:有何差别
3.1.4 Rabbit 配置文件
3.2 请求许可
3.2.1 管理用户
3.2.2 Rabbit 的权限系统
3.3 检查
3.3.1 查看数据统计
3.3.2 理解 RabbitMQ 日志
3.4 修复 Rabbit:疑难解答
由 badrpc、nodedown 和其他 Erlang 引起的问题
3.5 总结
第 4 章 解决 Rabbit 相关问题:编码与模式
4.1 解耦风雨路:谁将我们推向消息通信
4.1.1 异步状态思维(分离请求和动作)
4.1.2 提供扩展性:没有负载均衡器的世界
4.1.3 零成本 API :语言不应成为枷锁
4.2 发后即忘模型
4.2.1 发送告警
4.2.2 并行处理
4.3 别忘了:用 RabbitMQ 实现 RPC 并等待响应
4.3.1 私有队列和发送确认
4.3.2 使用 reply_to 来实现简单的 JSON RPC
4.4 总结
第 5 章 集群并处理失败
5.1 开足马力:RabbitMQ 集群
5.2 集群架构
5.2.1 集群中的队列
5.2.2 分布交换器
5.2.3 是内存节点还是磁盘节点
5.3 在你的笔记本电脑上设置集群
5.4 将节点分布到更多的机器上
5.5 升级集群节点
5.6 镜像队列和保留消息
5.6.1 声明并使用镜像队列
5.6.2 镜像队列工作原理
5.7 总结
第 6 章 从故障中恢复
6.1 为 Rabbit 做负载均衡
6.1.1 安装 HAProxy
6.1.2 配置 HAProxy
6.2 连接丢失和故障转移
6.3 总结
第 7 章 warren 和 Shovel:故障转移和复制
7.1 warren:另一种集群方式
7.2 设定负载均衡器--基于主/从的集群
7.3 远距离通信和复制
7.3.1 给 Rabbit 装备 Shovel :Shovel 插件介绍
7.3.2 安装 Shovel
7.3.3 配置并运行 Shovel
7.4 总结
第 8 章 从 Web 端管理 RabbitMQ
8.1 超越 rabbitmqctl:RabbitMQ Management 插件
8.1.1 为何需要 Management 插件
8.1.2 Management 插件功能
8.1.3 启用 Management 插件
8.2 从 Web 控制台来管理 RabbitMQ
8.2.1 监控 Erlang VM
8.2.2 从 JSON 文件导入配置
8.3 从 Web 控制台管理用户
8.3.1 创建用户
8.3.2 管理用户的权限
8.4 从 Web 控制台管理交换器和队列
8.4.1 列出队列信息
8.4.2 创建队列
8.5 回到命令行
8.5.1 为什么需要另一个 CLI
8.5.2 CLI 管理:一种更简单的方式
8.5.3 安装 rabbitmqadmin 脚本
8.5.4 清空队列、创建交换器等
8.6 总结
第 9 章 使用 REST API 控制 Rabbit
9.1 能用 RabbitMQ REST API 做什么
9.2 对客户端授权访问
9.3 访问数据统计
9.4 自动化 vhost 和用户配置
9.5 总结 .
第 10 章 监控
10.1 监控 RabbitMQ:密切关注你的 warren
10.1.1 为 Nagios 编写健康检测
10.1.2 使用 AMQP 模拟检测来确认 RabbitMQ 是否运行
10.1.3 使用 REST API 来检测
10.1.4 监控配置文件修改
10.1.5 监控集群状态
10.2 确保消费者正常工作
10.2.1 通过 AMQP 监控队列等级
10.2.2 使用 REST API 来监控队列级别
10.2.3 建立队列的消息计数基准经验法则
10.3 总结
第 11 章 提升性能,保障安全
11.1 对速度的需求
11.1.1 消息持久化
11.1.2 消息确认
11.1.3 路由算法和绑定规则
11.1.4 投递消息
11.2 内存使用率和进程限制
11.2.1 内存使用率
11.2.2 Erlang 进程计数
11.3 SSL 连接 ..
11.3.1 SSL 证书.
11.3.2 设置证书颁发机构 ..
11.3.3 生成根证书
11.3.4 生成服务器端证书
11.3.5 生成客户端证书
11.3.6 启用 RabbitMQ 的 SSL 监听器
11.3.7 测试你的 RabbitMQ SSL 设置
11.4 总结
第 12 章 聪明的 Rabbit:扩展 RabbitMQ
12.1 RabbitMQ 插件
12.1.1 你可以用插件做什么
12.1.2 在哪里可以找到插件
12.1.3 安装插件
12.1.4 移除插件
12.2 制作你自己的插件
12.2.1 获取 RabbitMQ Public Umbrella
12.2.2 设置文件夹结构
12.2.3 包含插件构建系统
12.2.4 创建 Erlang 应用文件
12.3 创建自定义交换器模块
12.3.1 将交换器注册到 RabbitMQ
12.3.2 实现交换器 behaviour
12.3.3 编译自定义交换器
12.3.4 测试你的插件
12.4 总结
附录 A 在 Java 和.NET 上使用 Rabbit
附录 B 在线资源
附录 C 在 Windows 上安装 RabbitMQ 307
下载地址:https://www.wenjiangs.com/wp-content/uploads/2024/02/ghPxiLUAplWNaybV.zip
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: Nginx 实战 PDF 文档
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论