Apache Pulsar 原理解析與應用實踐

楊國棟著

  • 出版商: 機械工業
  • 出版日期: 2023-05-01
  • 售價: $594
  • 貴賓價: 9.5$564
  • 語言: 簡體中文
  • 頁數: 241
  • 裝訂: 平裝
  • ISBN: 7111726081
  • ISBN-13: 9787111726081
  • 相關分類: 大數據 Big-data
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

商品描述

這是一本從實踐角度解讀Apache Pulsar相關組件、工作原理和落地實踐的專業指導書。
本書主要面向的是初中級讀者,從基礎概念講起,逐漸擴展到基本作、核心技術、常用工具及典型應用等。
本書共分為10章: 
1章主要介紹與Apache Pulsar相關的基礎知識,比如發展歷史、適用場景、優勢與不足,以及與消息隊列框架相關的知識等。
2章主要介紹Apache Pulsar的核心概念和架構。
3~9章主要介紹進行實須具備的內容,比如Apache Pulsar安裝部署的方法、
基本作、核心組件、 特性、輸入/輸出、Pulsar SQL、運維方法等。
10章是實落地的方法,包括Pulsarde 應用模式、flink配合實現實時處理、構建實時消息管道得具體實踐等。
 

目錄大綱

前言
基礎篇
第1章Pulsar概述2
1.1 Pulsar是什麼2
1.2 Pulsar的優勢3
1.2.1 Pulsar不只是消息隊列4
1.2.2 存儲與計算分離4
1.2.3 雲原生架構5
1.2.4 Pulsar的存儲特性6
1.2.5 消息傳輸協議8
1.2.6 消費方式8
1.2.7 豐富的功能與生態9
1.3 消息隊列對比9
1.3.1 消息隊列簡介10
1.3.2 性能與可靠性11
1.3.3 功能特性對比14
1.4 快速體驗17
1.4.1 下載安裝17
1.4.2 單機服務啟動17
1.4.3 生產與消費18
第2章Pulsar的基本概念和架構詳解20
2.1 Pulsar的基本概念20
2.1.1 多租戶與命名空間20
2.1.2 主題21
2.1.3 生產者22
2.1.4 消費者與訂閱24
2.1.5 消息的保留與過期27
2.2 Pulsar的邏輯架構28
2.2.1 主題的配置管理29
2.2.2 主題的數據流轉30
2.2.3 主題的數據存儲31
2.3 Pulsar物理架構32
2.3.1 物理架構概述32
2.3.2 核心組件與服務35
第3章Pulsar安裝與部署39
3.1 依賴環境39
3.1.1 安裝Java 39
3.1.2 Pulsar安裝包40
3.2 分佈式部署42
3.2.1 資源分配規劃42
3.2.2 集群搭建實戰44
3.3 Docker部署47
3.3.1 Docker單機部署47
3.3.2 Docker分佈式部署48
3.4 Kubernetes部署48
3.4.1 minikube環境安裝48
3.4.2 Helm Chart安裝49
3.4.3 在Kubernetes中使用Pulsar 51
3.5 源碼的結構與編譯52
3.5.1 源碼結構52
3.5.2 源碼編譯52
第4章Pulsar的基本操作54
4.1 生產者開發54
4.1.1 生產者概覽54
4.1.2 構建客戶端對象56
4.1.3 構建生產者58
4.1.4 數據發送路由規則60
4.1.5 分批發送63
4.1.6 分塊發送64
4.1.7 生產者攔截器64
4.2 消費者開發65
4.2.1 構建消費者65
4.2.2 數據確認68
4.2.3 消費者攔截器72
4.2.4 消費者監聽器72
4.3 Reader開發73
4.4 模式管理74
4.4.1 模式類型75
4.4.2 自動模式78
4.4.3 模式管理79
原理篇
第5章Pulsar核心組件原理84
5.1 Broker原理84
5.1.1 通信協議層84
5.1.2 主題查找服務89
5.1.3 租戶與命名空間管理90
5.1.4 負載管理92
5.2 BookKeeper原理94
5.2.1 BookKeeper簡介94
5.2.2 BookKeeper的使用100
5.3 ManagedLedger組件100
5.3.1 ManagedLedger簡介101
5.3.2 消息積壓的配額管理102
5.3.3 消息的保留與清理103
5.3.4 消息的寫入104
5.3.5 消息的緩存與讀取104
5.4 主題管理105
5.4.1 Pulsar主題管理架構106
5.4.2 生產者原理108
5.4.3 訂閱與消費者原理110
5.4.4 消息生存時間與持久化控制114
第6章Pulsar高級特性115
6.1 Pulsar事務115
6.1.1 消息隊列事務隔離級別116
6.1.2 Pulsar事務簡介117
6.1.3 Pulsar事務的使用方法118
6.1.4 Pulsar事務實現原理及關鍵流程119
6.2 消息隊列協議層122
6.2.1 協議處理器122
6.2.2 Pulsar上的Kafka簡介125
6.2.3 Pulsar上的Kafka使用126
6.2.4 Pulsar上的Kafka工作原理128
6.3 分層存儲130
6.3.1 分層存儲的設計130
6.3.2 分層存儲的使用131
6.3.3 分層存儲的原理133
6.4 消息延遲傳遞133
6.5 主題壓縮134
6.5.1 主題壓縮應用135
6.5.2 主題壓縮原理135
第7章Pulsar Function與
Pulsar I/O 137
7.1 Pulsar Function簡介137
7.1.1 Pulsar Function編程模型137
7.1.2 Pulsar Function邏輯結構與應用場景140
7.2 Pulsar Function應用實踐141
7.2.1 Pulsar Function的部署與使用141
7.2.2 自定義Pulsar Function開發146
7.2.3 Pulsar Function語義支持148
7.3 Pulsar Function原理150
7.3.1 Pulsar Function運行流程150
7.3.2 Function Worker組件工作原理152
7.3.3 Pulsar運行時153
7.4 Pulsar I/O 154
7.4.1 Pulsar I/O概述154
7.4.2 使用內置的Pulsar連接器155
7.4.3 開發自定義連接器156
7.4.4 實例層原理160
應用篇
第8章Pulsar SQL架構、配置與實現原理164
8.1 Trino簡介164
8.1.1 Trino架構簡介165
8.1.2 存儲與計算分離168
8.2 Pulsar SQL配置169
8.2.1 單機體驗Pulsar SQL 169
8.2.2 數據查詢170
8.3 Pulsar連接器工作原理171
8.4 Pulsar聯邦查詢172
8.4.1 準備數據源173
8.4.2 聯邦查詢175
第9章管理你的Pulsar 176
9.1 Pulsar安全配置176
9.1.1 數據加密176
9.1.2 授權與認證180
9.1.3 自定義權限插件186
9.2 Pulsar監控配置189
9.2.1 Pulsar監控概述189
9.2.2 Prometheus部署190
9.2.3 Grafana儀錶盤配置191
9.3 Pulsar管理工具192
9.3.1 pulsar-admin工具192
9.3.2 Pulsar Manager工具196
9.3.3 性能壓測工具197
9.3.4 ManagedLedger管理199
9.4 集群管理201
9.4.1 配置管理201
9.4.2 Pulsar資源配置203
第10章Pulsar與Flink生態206
10.1 Flink簡介207
10.1.1 Flink的概念207
10.1.2 Flink基本組件212
10.2 Flink Pulsar源連接器214
10.2.1 源連接器的使用214
10.2.2 源連接器原理218
10.3 Flink Pulsar輸出連接器220
10.3.1 統一接收器API 221
10.3.2 Flink Pulsar Sink API的使用221
10.3.3 PulsarSink原理223
第11章Pulsar應用實踐224
11.1 Pulsar應用模式224
11.1.1 Pulsar數據總線概述224
11.1.2 Pulsar數據集成226
11.2 Pulsar與Spark集成230
11.3 Pulsar與Kafka集成231
11.3.1 Kafka客戶端適配器231
11.3.2 Pulsar I/O Kafka 233
11.3.3 Pulsar Connector適配器234
11.4 Pulsar CDC 236
11.4.1 Pulsar Canal CDC 236
11.4.2 Pulsar Debezium CDC 238
11.5 可靠性優先場景239
11.5.1 冪等性、消息確認與事務239
11.5.2 可靠性與一致性240