精通Apache Pulsar:可伸縮雲原生事件流實踐

精通Apache Pulsar:可伸縮雲原生事件流實踐

《精通Apache Pulsar:可伸縮雲原生事件流實踐》是電子工業出版社出版圖書,

【美】Jowanza Joseph 著,蔡正昕 王殿進 徐文濤 譯。

基本介紹

  • 中文名精通Apache Pulsar:可伸縮雲原生事件流實踐
  • 作者:【美】Jowanza Joseph
  • 譯者:蔡正昕 王殿進 徐文濤
  • 出版時間:2023年12月
  • 出版社:電子工業出版社
  • 頁數:224 頁
  • ISBN9787121467172
  • 定價:89 元
  • 開本:16 開
內容簡介,圖書目錄,

內容簡介

《精通Apache Pulsar:可伸縮雲原生事件流實踐》專為想要學習並掌握Apache Pulsar的讀者打造,是一本入門圖書。全書共有13章內容。第1章和第2章,從生活實例中引入實時訊息系統和事件驅動的概念,幫助大家理解Apache Pulsar系統存在的必要性,以及Pulsar的獨特性和價值定位。第3章介紹了Pulsar在雅虎的起源故事、設計理念與套用場景。第4章探究了Pulsar內部的主要組件及其工作原理,幫助大家構建對Pulsar的整體架構認知。第5章到第10章,詳細介紹了Pulsar消費者、生產者的工作原理,套用於生產和消費訊息且與第三方系統互動的框架Pulsar IO,以及Pulsar Functions、分層存儲、Pulsar SQL等Pulsar的獨特理念和關鍵特性。第11章與第12章,展示了如何在諸多環境中部署Pulsar,以及在運維Pulsar的過程中需要關注的指標。在第13章中,作者結合個人經驗闡述了Pulsar未來值得探索的領域和方向。
《精通Apache Pulsar:可伸縮雲原生事件流實踐》配圖生動形象,實例豐富,不僅提供了很多代碼示例,還提供了多篇附錄,以作參考。

圖書目錄

前言 ....................................................................................................xvii
第 1 章 實時訊息的價值 ........................................................................ 1
流動的數據 ............................................................................................................1
資源效率 ................................................................................................................3
使用場景 ................................................................................................................4
銀行 .................................................................................................................5
醫療 .................................................................................................................6
安全 .................................................................................................................7
物聯網 .............................................................................................................8
小結 .....................................................................................................................10
第 2 章 事件流和事件代理 ................................................................... 11
發布 / 訂閱 ........................................................................................................... 11
佇列 .....................................................................................................................13
故障類型 ..............................................................................................................15
推送與輪詢 ..........................................................................................................15
為什麼需要 Pulsar ................................................................................................16
流和佇列的統一 ............................................................................................16
模組化 ...........................................................................................................16
性能 ...............................................................................................................18
小結 .....................................................................................................................19
第 3 章 認識 Pulsar ............................................................................ 20
Pulsar 的起源 .......................................................................................................20
Pulsar 的設計理念 ................................................................................................21
多租戶 ...........................................................................................................22
跨地域複製 ...................................................................................................23
性能 ...............................................................................................................27
模組化 ...........................................................................................................27
Pulsar 生態 ...........................................................................................................28
Pulsar Functions ............................................................................................28
Pulsar IO .......................................................................................................29
Pulsar SQL ....................................................................................................30
Pulsar 成功案例 ...................................................................................................30
雅虎日本 .......................................................................................................30
Splunk ...........................................................................................................31
Iterable ..........................................................................................................32
小結 .....................................................................................................................33
第 4 章 Pulsar 內部組件 ..................................................................... 34
Broker ..................................................................................................................34
訊息快取 .......................................................................................................35
與 BookKeeper、ZooKeeper 互動 .................................................................37
Schema 校驗 ..................................................................................................38
Broker 間的通信 ............................................................................................38
Pulsar Functions 和 Pulsar IO ........................................................................39
Apache BookKeeper .............................................................................................39
預寫式日誌 ...................................................................................................45
訊息存儲 .......................................................................................................45
對象 /Blob 存儲 .............................................................................................46
Pravega ..........................................................................................................47
Majordodo .....................................................................................................47
Apache ZooKeeper ...............................................................................................48
命名服務 .......................................................................................................49
配置管理 .......................................................................................................49
選主 ...............................................................................................................50
通知系統 .......................................................................................................50
Apache Kafka ................................................................................................50
Apache Druid .................................................................................................51
Pulsar Proxy .........................................................................................................52
Java 虛擬機(JVM) .............................................................................................53
Netty ..............................................................................................................54
Apache Spark .................................................................................................55
Apache Lucene ..............................................................................................55
小結 .....................................................................................................................55
第 5 章 消費者 .................................................................................... 56
成為消費者意味著什麼 ........................................................................................56
訂閱 .....................................................................................................................57
獨占 ...............................................................................................................60
共享 ...............................................................................................................61
鍵共享 ...........................................................................................................62
故障轉移 .......................................................................................................65
確認 .....................................................................................................................66
單條確認 .......................................................................................................66
累積確認 .......................................................................................................67
Schema .................................................................................................................67
消費者 Schema 管理 .....................................................................................68
消費模式 ..............................................................................................................68
批處理 ...........................................................................................................68
分塊 ...............................................................................................................69
高級配置 ..............................................................................................................70
延遲訊息 .......................................................................................................70
保留策略 .......................................................................................................70
堆積限額 .......................................................................................................71
配置消費者 ..........................................................................................................72
回放 ...............................................................................................................73
死信主題 .......................................................................................................75
重試主題 .......................................................................................................76
小結 .....................................................................................................................76
第 6 章 生產者 .................................................................................... 77
同步生產者 ..........................................................................................................77
異步生產者 ..........................................................................................................78
生產者路由 ..........................................................................................................79
輪詢路由 .......................................................................................................79
單分區路由 ...................................................................................................80
定製分區路由 ................................................................................................81
生產者配置 ..........................................................................................................83
topicName .....................................................................................................83
producerName ...............................................................................................83
sendTimeoutMs .............................................................................................83
blockIfQueueFull ...........................................................................................84
maxPendingMessages ....................................................................................84
maxPendingMessagesAcrossPartitions ...........................................................84
messageRoutingMode ....................................................................................84
hashingScheme ..............................................................................................84
cryptoFailureAction .......................................................................................85
batchingMaxPublishDelayMicros ..................................................................85
batchingMaxMessages ...................................................................................85
batchingEnabled ............................................................................................85
compressionType ...........................................................................................85
Schema on Write ..................................................................................................86
使用 Schema Registry ....................................................................................86
非持久化主題 ......................................................................................................89
使用場景 .......................................................................................................90
使用非持久化主題 ........................................................................................90
事務 .....................................................................................................................91
小結 .....................................................................................................................92
第 7 章 Pulsar IO ............................................................................... 93
Pulsar IO 架構 ......................................................................................................93
運行時 ...........................................................................................................94
性能考量 .......................................................................................................94
使用場景 ..............................................................................................................95
簡單事件處理管道 ........................................................................................95
變化數據捕獲 ................................................................................................96
考量 .....................................................................................................................97
訊息序列化 ...................................................................................................97
管道穩定性 ...................................................................................................97
故障處理 .......................................................................................................98
示例 .....................................................................................................................99
Elasticsearch ..................................................................................................99
Netty ............................................................................................................ 100
創建自己的連線器 ............................................................................................. 101
TimescaleDB ............................................................................................... 101
小結 ................................................................................................................... 102
第 8 章 Pulsar Functions .................................................................. 103
流處理 ................................................................................................................ 103
Pulsar Functions 架構 ......................................................................................... 105
運行時 ......................................................................................................... 105
隔離性 ......................................................................................................... 106
在 Kubernetes 上部署 Pulsar Functions 的隔離性 .............................................. 107
使用場景 ............................................................................................................ 107
創建 Pulsar Functions .................................................................................. 108
簡單事件處理 .............................................................................................. 108
主題清理 ..................................................................................................... 110
主題數據統計 .............................................................................................. 113
小結 ................................................................................................................... 115
第 9 章 分層存儲 .............................................................................. 116
在雲端存儲數據 ................................................................................................. 117
對象存儲 ..................................................................................................... 118
使用場景 ............................................................................................................ 120
複製 ............................................................................................................. 120
CQRS .......................................................................................................... 121
災難恢復 ..................................................................................................... 122
卸載數據 ............................................................................................................ 122
Pulsar Offloader ........................................................................................... 122
檢索已卸載的數據 ............................................................................................. 129
與對象存儲數據互動 ................................................................................... 129
重填主題 ..................................................................................................... 129
使用 Pulsar 客戶端 ...................................................................................... 130
小結 ................................................................................................................... 131
第 10 章 Pulsar SQL ........................................................................ 132
流即表 ................................................................................................................ 133
SQL-on-Anything 引擎 ...................................................................................... 135
Apache Flink: 另一種視角 ........................................................................... 136
Presto/Trino ................................................................................................. 137
Pulsar SQL 的工作原理 ...................................................................................... 138
配置 Pulsar SQL ................................................................................................. 140
性能考量 ............................................................................................................ 142
小結 ................................................................................................................... 143
第 11 章 部署 Pulsar ........................................................................ 144
Docker ................................................................................................................ 144
裸金屬 ................................................................................................................ 146
最低要求 ..................................................................................................... 146
開始安裝 ..................................................................................................... 146
部署 ZooKeeper........................................................................................... 147
啟動 BookKeeper ........................................................................................ 148
啟動 Pulsar .................................................................................................. 148
公有雲廠商 ........................................................................................................ 149
AWS ............................................................................................................ 151
Azure ........................................................................................................... 152
Google Cloud Platform ................................................................................ 153
Kubernetes ......................................................................................................... 153
小結 ................................................................................................................... 155
第 12 章 運維 Pulsar ........................................................................ 156
Apache BookKeeper 指標 .................................................................................. 157
伺服器指標 ................................................................................................. 157
Journal 指標 ................................................................................................ 158
存儲指標 ..................................................................................................... 159
Apache ZooKeeper 指標 ..................................................................................... 159
伺服器指標 ................................................................................................. 160
請求指標 ..................................................................................................... 161
主題指標 ............................................................................................................ 161
消費者指標 ........................................................................................................ 163
Pulsar 事務指標 ................................................................................................. 163
Pulsar Functions 指標 ......................................................................................... 164
高級運維技巧 .................................................................................................... 165
攔截器和追蹤機制 ...................................................................................... 165
Pulsar SQL 指標 .......................................................................................... 167
指標轉發 ............................................................................................................ 169
監控面板 ..................................................................................................... 169
小結 ................................................................................................................... 170
第 13 章 未來 ................................................................................... 171
程式語言支持 .................................................................................................... 171
擴展接口 ..................................................................................................... 171
增強 Pulsar Functions .................................................................................. 172
架構簡化 / 擴展 ........................................................................................... 175
訊息平台橋接器 .......................................................................................... 177
小結 ................................................................................................................... 180
附錄 A Pulsar Admin API ................................................................. 181
附錄 B Pulsar Admin CLI ................................................................. 189
附錄 C 跨地域複製 ........................................................................... 192
附錄 D Pulsar 中的安全、認證和鑒權 ............................................... 198
關於作者 ............................................................................................ 202
封面介紹 ............................................................................................ 202

相關詞條

熱門詞條

聯絡我們