Apache SkyWalking實戰

《Apache SkyWalking實戰》是2020年機械工業出版社出版的圖書。

基本介紹

  • 出版時間:2020年8月1日
  • 出版社:機械工業出版社
  • ISBN:9787111659068
內容簡介,圖書目錄,

內容簡介

這是一本從功能使用、項目設計、核心模組、工作原理、擴展實踐5個維度全面講解SkyWalking的著作。由SkyWalking的創始人和核心開發團隊撰寫,得到了來自華為、百度、螞蟻金服、京東數科、Tetrate.io的5位技術專家的聯袂推薦。
本書共14章,在邏輯上分為4個部分:
第壹部分 SkyWalking入門(第1~3章)
詳細介紹了SkyWalking的必備常識、架構設計、安裝與配置,以及它在單體套用架構和微服務架構中的實戰操作,能幫助讀者快速上手;
第二部分 SkyWalking理論(第4~5章)
作為監控軟體,SkyWalking需要考慮如何使自身對套用的影響*小化,以及如何實現分散式追蹤和監控,這兩章對此做了詳細的技術分析。記憶體無堵塞佇列是減小系統負載的關鍵,而集中分散式追蹤模型是SkyWalking監控分析的靈魂。
第三部分 SkyWalking原理(第6~12章)
SkyWalking後端的OAP平台具有極強的模組化和擴展能力,本篇深入講解了總體的模組化設計,以及OAL分析、集群和存儲這三個*核心模組。此外,還介紹了探針外掛程式開發和MQ通信模式擴展這兩個熱門主題。
第四部分 SkyWalking趨勢(第13~14章)
SkyWalking雖然是以分散式探針為基礎的分散式追蹤工具,但深耕於整個APM領域。本部分從Service Mesh和基於語言探針性能剖析這兩大方向,展現了SkyWalking在雲原生領域更大的集成能力和運用範圍。

圖書目錄

前 言
第1章 全面認識Apache SkyWalking 1
1.1 SkyWalking介紹 1
1.1.1 什麼是SkyWalking 1
1.1.2 SkyWalking的發展歷程 2
1.1.3 SkyWalking的適用場景 3
1.1.4 SkyWalking的社區與生態 5
1.2 SkyWalking的架構設計 6
1.2.1 面向協定設計 7
1.2.2 模組化設計 8
1.2.3 輕量化設計 9
1.3 SkyWalking的優勢 9
1.3.1 傳統分散式架構與雲原生的一致性支持 10
1.3.2 易於維護 10
1.3.3 高性能 11
1.3.4 利於二次開發和集成 11
1.4 SkyWalking開發必備知識介紹 11
1.4.1 JavaAgent介紹 12
1.4.2 遠程調試介紹 18
1.4.3 Service Mesh介紹 19
1.5 本章小結 21
第2章 SkyWalking安裝與配置 22
2.1 項目編譯與工程結構 22
2.1.1 項目編譯 22
2.1.2 工程結構 24
2.2 JavaAgent安裝 27
2.2.1 安裝方法 27
2.2.2 配置參數 29
2.2.3 外掛程式介紹 30
2.2.4 高級特性 36
2.3 後端與UI部署 43
2.3.1 SkyWalking部署介紹 43
2.3.2 快速啟動 45
2.3.3 application.yaml詳解 46
2.3.4 參數複寫 51
2.3.5 IP和連線埠設定 51
2.3.6 集群管理配置 52
2.3.7 Kubernetes部署 56
2.3.8 後端存儲 58
2.3.9 設定服務端採樣率 62
2.3.10 告警設定 63
2.3.11  Exporter設定 66
2.3.12  UI部署詳解 66
2.4 UI介紹 67
2.4.1 Dashboard介紹 67
2.4.2 拓撲介紹 69
2.4.3 Trace視圖 70
2.5 本章小結 71
第3章 Apache SkyWalking實戰 72
3.1 SkyWalking與單體套用架構 72
3.1.1 什麼是單體套用架構 72
3.1.2 單體套用架構的優缺點 74
3.1.3 SkyWalking對單體套用架構的適用性 74
3.2 SkyWalking與微服務架構 75
3.2.1 遠程過程調用 77
3.2.2 外部服務 78
3.3 實戰環境搭建 79
3.3.1 SkyWalking後台搭建 79
3.3.2 實戰集群搭建 80
3.4 實戰操作 82
3.4.1 觀察微服務中的各個維度 82
3.4.2 觀察指標 83
3.4.3 觀察系統架構 85
3.4.4 提取關鍵路徑 90
3.4.5 查找失敗服務或請求 93
3.4.6 查找慢服務或請求 96
3.4.7 處理告警 101
3.5 本章小結 105
第4章 輕量級佇列核心 106
4.1 什麼是輕量級佇列核心 106
4.1.1 Buffer 106
4.1.2 Channel 107
4.1.3 DataCarrier 108
4.2 生產者—消費者如何協同 108
4.2.1 生產訊息 108
4.2.2 消費訊息 111
4.3 本章小結 115
第5章 SkyWalking追蹤模型 116
5.1 追蹤模型入門 116
5.1.1 Dapper與追蹤模型 116
5.1.2 典型的追蹤模型 119
5.2 SkyWalking追蹤模型與協定 120
5.2.1 SkyWalking追蹤模型 120
5.2.2 SkyWalking數據傳輸協定 122
5.3 SkyWalking探針上下文傳播協定 124
5.3.1 傳播模型 124
5.3.2 傳播上下文 124
5.4 SkyWalking v3協定 125
5.5 本章小結 126
第6章 SkyWalking OAP Server模組化架構 127
6.1 模組化框架 127
6.1.1 模組和模組實現 127
6.1.2 模組管理配置檔案 129
6.2 模組啟動與模組依賴 130
6.3 模組可替換性 131
6.4 模組實現選擇器 132
6.5 新增模組 132
6.6 本章小結 133
第7章 Observability Analysis Language體系 134
7.1 什麼是OAL 134
7.2 OAL實現原理 135
7.3 OAL語法 137
7.3.1 指標計算定義語法 137
7.3.2 disable語法 142
7.4 本章小結 143
第8章 SkyWalking OAP Server集群通信模型 144
8.1 計算流 145
8.2 通信協定 146
8.3 集群協調器 148
8.4 本章小結 149
第9章 SkyWalking OAP Server存儲模型 150
9.1 模型結構介紹 150
9.1.1 註冊模型結構 150
9.1.2 明細模型結構 152
9.1.3 指標模型結構 153
9.1.4 採樣模型結構 154
9.2 存儲模型間的聯繫 154
9.3 存儲模型與OAL的關係 156
9.4 本章小結 159
第10章 Java探針外掛程式開發 160
10.1 基礎概念 160
10.1.1 Span 160
10.1.2 Trace Segment 161
10.1.3 ContextCarrier 162
10.1.4 ContextSnapshot 162
10.2 核心對象相關API的使用 162
10.3 探針外掛程式工程結構 168
10.3.1 工程結構簡介 168
10.3.2 定義攔截形式 169
10.3.3 實現攔截形式的攔截器 171
10.4 探針外掛程式開發實戰 171
10.4.1 設計探針外掛程式 172
10.4.2 Apache Dubbo探針外掛程式 173
10.4.3 Spring @Async探針外掛程式 177
10.5 本章小結 182
第11章 探針和後端訊息通信模式開發 183
11.1 為什麼官方默認不提供多種方式 183
11.2 通信機制分析 184
11.2.1 探針與後端的註冊通信 184
11.2.2 探針與後端的數據上報通信 193
11.3 如何擴展通信模式 197
11.3.1 使用HTTP擴展註冊通信 198
11.3.2 使用Kafka擴展數據上報通信 205
11.4 本章小結 214
第12章 SkyWalking OAP Server監控與指標 215
12.1 針對Trace場景的監控指標 216
12.2 針對Service Mesh場景的監控指標 219
12.3 自監控 220
12.4 本章小結 22
......

相關詞條

熱門詞條

聯絡我們