注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計深入RabbitMQ

深入RabbitMQ

深入RabbitMQ

定 價:¥79.00

作 者: [美] Gavin M.Roy(加文羅伊) 著,汪佳南 鄭天民 譯
出版社: 電子工業(yè)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787121341809 出版時間: 2018-06-01 包裝: 平裝
開本: 16 頁數(shù): 252 字?jǐn)?shù):  

內(nèi)容簡介

  《深入RabbitMQ》對RabbitMQ 這一業(yè)界主流的消息中間件做了全面介紹,給出了如何使用RabbitMQ 構(gòu)建消息通信系統(tǒng)的方法和實踐?!渡钊隦abbitMQ》從AMQP 協(xié)議出發(fā),深入介紹各種消息屬性,給出RabbitMQ 在發(fā)送和消費消息上的特性和佳實踐,并闡述基于RabbitMQ 所特有的交換器組件實現(xiàn)靈活的消息路由機制。同時,本書也討論了如何利用RabbitMQ 強大的集群機制實現(xiàn)分布式環(huán)境下的消息通信,并展示了如何在RabbitMQ中,使用其他傳輸協(xié)議以及數(shù)據(jù)庫集成等功能來實現(xiàn)各種定制化需求。 《深入RabbitMQ》的讀者對象為從事互聯(lián)網(wǎng)行業(yè)中各種分布式和服務(wù)化系統(tǒng)開發(fā)的研究人員、高等院校計算機相關(guān)專業(yè)的研究生和本科生,以及廣大的IT 愛好者。

作者簡介

  Gavin M. Roy 是一位積極的開源傳播者和倡導(dǎo)者,自20 世紀(jì)90 年代中期就一直活躍在互聯(lián)網(wǎng)和企業(yè)級技術(shù)之中。

圖書目錄

第一篇 RabbitMQ和應(yīng)用程序體系結(jié)構(gòu)
第1章 RabbitMQ基礎(chǔ) 3
1.1 RabbitMQ特性以及好處 4
1.1.1 RabbitMQ與Erlang 5
1.1.2 RabbitMQ與AMQP 6
1.2 誰在使用RabbitMQ,在怎么用 7
1.3 松耦合架構(gòu)的優(yōu)勢 8
1.3.1 解耦你的應(yīng)用 10
1.3.2 解耦數(shù)據(jù)庫寫入 11
1.3.3 無縫添加新功能 12
1.3.4 復(fù)制數(shù)據(jù)與事件 12
1.3.5 多主(Multi-Master)互聯(lián)化數(shù)據(jù)與事件 13
1.3.6 高級消息隊列模型 14
1.4 小結(jié) 16
第2章 使用AMQ協(xié)議與Rabbit進(jìn)行交互 18
2.1 AMQP作為一種RPC傳輸機制 19
2.1.1 啟動會話 20
2.1.2 調(diào)整正確的信道 20
2.2 AMQP RPC幀結(jié)構(gòu) 21
2.2.1 AMQP幀組件 21
2.2.2 幀類型 22
2.2.3 將消息編組成幀 23
2.2.4 方法幀結(jié)構(gòu) 24
2.2.5 內(nèi)容頭幀 26
2.2.6 消息體幀 26
2.3 使用協(xié)議 27
2.3.1 聲明交換器 27
2.3.2 聲明隊列 28
2.3.3 綁定隊列到交換器 29
2.3.4 發(fā)布消息到RabbitMQ 29
2.3.5 從RabbitMQ中消費消息 30
2.4 用Python編寫消息發(fā)布者 32
2.5 從RabbitMQ中獲取消息 36
2.6 小結(jié) 37
第3章 消息屬性詳解 38
3.1 合理使用屬性 39
3.2 使用content-type屬性創(chuàng)建顯式的消息契約 41
3.3 通過gzip和content-encoding屬性壓縮消息大小 43
3.4 使用message-id和correlation-id引用消息 45
3.4.1 Message-id 45
3.4.2 Correlation-id 45
3.5 創(chuàng)建時間:timestamp屬性 46
3.6 消息自動過期 47
3.7 使用delivery-mode平衡速度和安全性 48
3.8 使用app-id和user-id驗證消息來源 49
3.8.1 app-id 50
3.8.2 user-id 51
3.9 使用type屬性獲取明細(xì) 51
3.10 使用reply-to屬性實現(xiàn)動態(tài)工作流 52
3.11 使用消息頭自定義屬性 53
3.12 優(yōu)先級屬性 54
3.13 不能使用的屬性:cluster-id/reserved 54
3.14 小結(jié) 55
第4章 消息發(fā)布的性能權(quán)衡 58
4.1 平衡投遞速度與可靠投遞 59
4.1.1 如果沒有保證機制我們能期待什么 60
4.1.2 使用mandatory設(shè)置,RabbitMQ將不接受不可路由消息 62
4.1.3 發(fā)布者確認(rèn)作為事務(wù)的輕量級替代方法 64
4.1.4 使用備用交換器處理無法路由的消息 66
4.1.5 基于事務(wù)的批量處理 68
4.1.6 使用HA隊列避免節(jié)點故障 70
4.1.7 HA隊列與事務(wù) 72
4.1.8 通過設(shè)置delivery-mode為2將消息持久化到磁盤 72
4.2 RabbitMQ回推 75
4.2.1 使用rabbitpy來檢測連接狀態(tài) 77
4.2.2 使用管理API管理連接狀態(tài) 77
4.3 小結(jié) 78
第5章 消費消息,避免拉取 79
5.1 對比Basic.Get 和Basic.Consume 80
5.1.1 Basic.Get 80
5.1.2 Basic.Consume 82
5.2 優(yōu)化消費者性能 84
5.2.1 使用no-ack模式實現(xiàn)更快的吞吐量 85
5.2.2 通過服務(wù)質(zhì)量設(shè)置控制消費者預(yù)取 86
5.2.3 消費者使用事務(wù) 89
5.3 拒絕消息 90
5.3.1 Basic.Reject 90
5.3.2 Basic.Nack 91
5.3.3 死信交換器 92
5.4 控制隊列 94
5.4.1 臨時隊列 94
5.4.2 永久隊列 97
5.4.3 任意隊列設(shè)置 99
5.5 小結(jié) 99
第6章 消息路由模式 101
6.1 通過direct交換器路由消息 102
6.1.1 創(chuàng)建應(yīng)用架構(gòu) 103
6.1.2 創(chuàng)建RPC工作者 107
6.1.3 編寫簡單的RPC發(fā)布者 110
6.2 通過fanout交換器廣播消息 115
6.2.1 修改面部檢測消費者 116
6.2.2 創(chuàng)建一個簡單的圖片哈希消費者 117
6.3 使用topic交換器有選擇地路由消息 119
6.4 使用headers交換器有選擇地路由消息 122
6.5 交換器性能基準(zhǔn) 124
6.6 交換器間路由 125
6.7 使用一致性哈希交換器路由消息 127
6.8 小結(jié) 131
第二篇 管理數(shù)據(jù)中心或云中的RabbitMQ
第7章 RabbitMQ集群 135
7.1 集群簡介 136
7.1.1 集群和管理界面 137
7.1.2 集群節(jié)點類型 138
7.1.3 集群和隊列行為 139
7.2 集群設(shè)置 142
7.2.1 虛擬機設(shè)置 143
7.2.2 向集群中添加節(jié)點 144
7.3 小結(jié) 147
第8章 跨集群的消息分發(fā) 148
8.1 聯(lián)合交換器和聯(lián)合隊列 149
8.1.1 聯(lián)合交換器 149
8.1.2 聯(lián)合隊列 152
8.2 創(chuàng)建RabbitMQ虛擬機 153
8.2.1 創(chuàng)建首個實例 153
8.2.2 復(fù)制EC2實例 159
8.3 連接上游節(jié)點 162
8.3.1 定義聯(lián)合中的上游節(jié)點 162
8.3.2 定義策略 164
8.3.3 利用上游集合 167
8.3.4 雙向聯(lián)合交換器 170
8.3.5 使用聯(lián)合來升級集群 171
8.4 小結(jié) 173
第三篇 集成與定制
第9章 使用替代協(xié)議 177
9.1 MQTT和RabbitMQ 178
9.1.1 MQTT協(xié)議 178
9.1.2 通過MQTT發(fā)送消息 182
9.1.3 MQTT訂閱者 184
9.1.4 MQTT插件配置 187
9.2 STOMP和RabbitMQ 189
9.2.1 STOMP協(xié)議 190
9.2.2 發(fā)布消息 191
9.2.3 消費消息 195
9.2.4 配置STOMP插件 198
9.2.5 在Web瀏覽器中使用STOMP 199
9.3 通過HTTP進(jìn)行無狀態(tài)發(fā)布 200
9.3.1 statelessd的由來 200
9.3.2 使用statelessd 201
9.3.3 運營架構(gòu) 202
9.3.4 通過statelessd來發(fā)布消息 203
9.4 小結(jié) 203
第10章 數(shù)據(jù)庫集成 205
10.1 PostgreSQL擴展:pg_amqp 206
10.1.1 安裝pg_amqp擴展 207
10.1.2 配置pg_amqp擴展 209
10.1.3 通過pg_amqp發(fā)送消息 210
10.2 監(jiān)聽PostgreSQL通知 212
10.2.1 安裝PostgreSQL LISTEN交換器 213
10.2.2 基于策略的配置 215
10.2.3 創(chuàng)建交換器 217
10.2.4 創(chuàng)建并綁定測試隊列 217
10.2.5 通過NOTIFY發(fā)送消息 218
10.3 將消息存入InfluxDB中 219
10.3.1 InfluxDB的安裝與設(shè)置 220
10.3.2 安裝InfluxDB存儲交換器 222
10.3.3 創(chuàng)建測試交換器 223
10.3.4 測試交換器 224
10.4 小結(jié) 227
附錄 準(zhǔn)備就緒 228
A.1 安裝VirtualBox 228
A.2 安裝Vagrant 230
A.3 設(shè)置Vagrant虛擬機 233
A.4 確認(rèn)安裝 234
A.5 小結(jié) 236

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號