ZeroMQ:雲時代極速消息通信庫

ZeroMQ:雲時代極速消息通信庫
定價:648
NT $ 648
 

內容簡介

介紹ZeroMQ 的API、套接字和模式的使用。通過建立應用程序來講解如何使用ZeroMQ 編程技術構建多線程應用程序,並創建自己的消息傳遞架構。《ZeroMQ:雲時代極速消息通信庫》設計了大量工作實例來實現請求- 應答模式的高級使用和容錯性,並對發布- 訂閱模式的性能、可靠性、狀態分發與監控進行了擴展。

《ZeroMQ:雲時代極速消息通信庫》面向的讀者是希望制作大規模分布式軟件的專業程序員和有志於這方面研究的專業人士,旨在幫助他們解決大規模、可擴展、低成本、高效率的問題,書中還展現了ZeroMQ所需的網絡和分布式計算概念。
 

目錄

前言

第1章 基礎知識
修復這個世界
本書的讀者對象
獲取示例
問過就必有收獲
在字符串上的小注解
版本報告
獲得消息
分而治之
用 ΦMQ編程
獲取正確的上下文
執行徹底的退出
為什麼我們需要 ΦMQ
套接字的可擴展性
從 ΦMQ v2.2升級到 ΦMQ v3.2
警告:不穩定的典范!

第2章 套接字和模式
套接字 API
把套接字接入網絡拓撲
使用套接字來傳輸數據
單播傳輸
ΦMQ不是一個中性載體
I/O線程
消息傳遞模式
高級別消息傳遞模式
處理消息
處理多個套接字
多部分消息
中間層及代理
動態發現問題
共享隊列(DEALER和 ROUTER套接字)
ΦMQ的內置代理功能
傳輸橋接
處理錯誤和 ETERM
處理中斷信號
檢測內存泄漏
使用 ΦMQ編寫多線程程序
線程間信令(PAIR套接字)
節點協調
零拷貝
發布 -訂閱消息封包
高水位標記
消息丟失問題的解決方案

第3章 高級請求 -應答模式
請求 -應答機制
簡單的應答封包
擴展的應答封包
這有什麼好處呢
請求 -應答套接字回顧
請求 -應答組合
REQ到 REP組合
DEALER到 REP組合
REQ到 ROUTER組合
DEALER到 ROUTER組合
DEALER到 DEALER組合
ROUTER到 ROUTER組合
無效組合
探索 ROUTER套接字
身份和地址
ROUTER錯誤處理
負載均衡模式
ROUTER代理和 REQ工人
ROUTER代理及 DEALER工人
負載均衡的消息代理
用於 ΦMQ的一個高級別的 API
高級別 API的特點
CZMQ高級別 API
異步客戶端 /服務器模式
能夠工作的示例:跨代理路由
建立詳情
單集群架構
擴展到多個集群
聯盟與對等比較
命名規范
狀態流原型
本地流和雲端流原型
總結

第4章 可靠的請求 -應答模式
什麼是「可靠性」
可靠性設計
客戶端可靠性(懶惰海盜模式)
基本可靠隊列(簡單海盜模式)
健壯的可靠隊列(偏執海盜模式)
信號檢測
置若罔聞地將它關閉
單向信號檢測
乒乓信號檢測
針對偏執海盜的信號檢測
合同和協議
面向服務的可靠隊列(管家模式)
異步管家模式
服務發現
冪等服務
斷開連接的可靠性(泰坦尼克模式)
高可用性對(雙星模式)
詳細需求
避免腦裂症狀
雙星實現
雙星反應器
無代理可靠性(自由職業者模式)
模型一:簡單的重試和故障轉移
模型二:粗暴獵槍屠殺
模式三:復雜和討厭的
結論

第5章 高級發布 -訂閱模式
發布 -訂閱模式的優點和缺點
發布 -訂閱跟蹤(特濃咖啡模式)
最后一個值緩存
慢速訂閱者檢測(自殺蝸牛模式)
高速訂閱者(黑盒模式)
可靠的發布 -訂閱(克隆模式)
集中式與分散式
將狀態表示為鍵 -值對
得到帶外的快照
重新發布來自客戶端的更新
處理子樹
臨時值
使用反應器
在雙星模式中添加可靠性
集群的散列映射協議
構建一個多線程棧和 API

第6章 ΦMQ社區
ΦMQ社區的架構
如何制作真正的大型架構
軟件架構的心理學
合同
過程
瘋狂,美麗,並且容易
陌生人,遇見陌生人
無限的財富
照管和培育
ΦMQ過程: C4
語言
目標
熱身
許可和所有權
對補丁程序的要求
開發過程
建立穩定的版本
公共合同的演變
一個實際例子
Git分支是有害的
簡單性與復雜性的對比
更改延遲
學習曲線
出故障的成本
前期協調
可擴展性
驚奇和期望
參與的經濟學
在沖突中的強壯性
隔離的保證
能見度
結論
為創新而設計
雙橋傳說
ΦMQ的路線圖是如何失去的
垃圾桶化的設計
復雜化的設計
簡約化的設計
職業倦怠
成功模式
懶惰的完美主義者
仁慈暴君
天和地
門戶開放
大笑的小丑
留心的將軍
社會工程師
不朽的園丁
滾石
海盜幫
快閃族
加那利看守
執行絞刑的劊子手
歷史學家
煽動者
神秘人

第7章 使用ΦMQ的高級架構
用於彈性設計的面向消息模式
第1步:內部化的語義
第2步:描繪一個粗略的架構
第3步:決定合同
第4步:編寫一個最小的端到端解決方案
第5步:解決一個問題,然后重復
Unprotocol
合同是艱難的
如何編寫 Unprotocol
為什麼使用 GPLv3的公開規范
使用 ABNF
廉價或討厭的模式
序列化數據
ΦMQ組幀
序列化語言
序列化庫
手寫的二進制序列化
代碼生成
傳輸文件
狀態機
使用 SASL認證
大型文件發布: FileMQ
為什麼要制作 FileMQ
最初的設計切片: API
最初的設計切片:協議
構建和嘗試 FileMQ
內部架構
公共 API
設計說明
配置
文件穩定性
遞交通知
符號鏈接
恢復和后期加入者
測試用例:曲目工具
得到一個官方端口號

第8章 分布式計算的框架
用於現實世界的設計
無線網絡的秘密生活
為什麼網狀網絡現在還沒出現
一些物理知識
現狀是什麼
結論
發現
通過原始套接字先發制人的發現
使用 UDP廣播協同發現
一台設備上的多個節點
設計 API
關於 UDP的更多內容
分拆一個庫項目
點對點消息傳遞
UDP信標幀
真正的對等連接(和諧模式)
檢測失蹤
群發消息
測試與模擬
使用斷言
前期測試
Zyre測試儀
測試結果
跟蹤活動
處理阻塞節點
分布式日志記錄和監視
一個合理的最小實現
協議斷言
二進制日志記錄協議
內容分發
編寫 Unprotocol
結論

第9章 后記
番外篇
Rob Gagnon的故事
Tom van Leeuwen的故事
Michael Jakl的故事
Vadim Shalts的故事
本書是如何誕生的
消除摩擦
許可
索引
網路書店 類別 折扣 價格
  1. 新書
    $648