博客 / 詳情

返回

我的舊書《Envoy Proxy 內幕》

image.png

本文介紹我的新開源書籍 - 《Envoy Proxy 內幕》。它是一本專注於 Envoy Proxy 機制和實現深入探討的書。內容主要源於我之前寫的《Istio & Envoy 內幕》一書。現在把 Envoy 部分單獨抽出來,重新整理成一本書。這樣做的目的是為了讓讀者更專注於 Envoy 的內容,而免受 Istio 的干擾。有些內容也是 Istio 無關或不適用的。所以現在獨立成書。以後《Istio & Envoy 內幕》一書將只更新 Istio 相關的內容。而把 Envoy 相關的內容更新都移到這本書《Envoy 內幕》上。

或者有讀者好奇,為何要 Envoy 獨立成書?因為我最近看到 Envoy 的使用已經不單單在 Istio 了。Envoy 已經成為一個獨立且廣泛流行的可編程代理。它被廣泛應用於各種雲原生架構、AI Gateway、邊緣計算中,等等非 Istio 的項目中也有使用。它正作為基礎設施的基礎設施。所以我覺得有必要把它獨立成書。讓更多非 Istio 的讀者瞭解 Envoy 的設計與實現。

本書概述

本書名為《Envoy Proxy 內幕》,英文名《Envoy Insider》。這是一本編寫中的書,現在草稿階段。

本書是什麼

本書內容包括:Envoy 源碼分析、深入 Envoy 基本原理解構與分析 。但不是一本傳統的《深入 xyz 源碼》類型的書。甚至可以説,我盡了最大的努力少在書中直接貼源碼。看源碼是掌握實現細節必須的一步,但在書中瀏覽源碼的體驗一般非常糟糕,本書更多使用源碼導航圖來讓讀者瞭解實現的全流程,而非迷失於碎片式的源碼片段細節當中而忘記全貌。

本書中,我嘗試以設計與實現角度,儘量系統地去思考:

  • Envoy 的架構設計與底層實現細節
  • Envoy 為什麼是現在的樣子
  • 那些魔術配置背後的真相: Linux + Envoy

    • 流量是如何通過 Linux 的 netfilter 技術被攔截並導向 Envoy 的

書裏説的,只是在我研究與使用了 Istio 一段時間後,的思考與記錄。我只是排查過一些 Istio/Envoy 相關的功能與性能問題,瀏覽和 Debug 過一些 Istio/Envoy 的代碼。

在研究 Istio 過程中。發現網上是有很多非常有價值的資訊。但是,要麼主要是從使用者出發,沒説實現機理;要麼就是説了機理,也説得很好,但內容缺少系統化和連貫性。

本書不是什麼

本書不是一本 Envoy 使用手冊。更不是從使用者角度,教如何深入淺出學習 Envoy。不會佈道 Envoy 有如何如何強大之功能,更不會教如何使用 Envoy。這方面網上已經有太多非常優秀的書、文章、文檔了。

🤷 : Yet, another Envoy User Guide?
🙅 : No!

讀者對象

本書主要講 Envoy 的設計、實現機制。假設讀者已經有一定的 Envoy 使用經驗。並有興趣進一步研究其實現機理。

書的訪問地址

  • https://envoy-insider.mygraphql.com

關於作者

我叫 Mark Zhu,一箇中年且頭髮少的程序員。我不是 Envoy 專家,充其量只是 Envoy Docs 的 Contributors。連互聯網大廠員工也不是。

為什麼水平有限還學人家寫書?因為這句話:

你不需要很厲害才能開始,但你需要開始才會很厲害。

Blog: https://blog.mygraphql.com/
為方便讀者關注 Blog 與本書的更新,開了個同步的 微信公眾號:Mark的滿紙方糖言

參與編寫

如果你也對編寫本書有興趣,歡迎聯繫我。本書的出發點不是刷簡歷,也沒這個能力。而且,這樣的非短平快TL;DR 書籍註定是小眾貨。

Dedication 💞

First, to my dear parents, for showing me how to live a happy
and productive life. To my dear wife and our amazing kid – thanks for all your love and patience.

Copyleft 聲明

無論是文字還是圖片,如果轉載或修改,請註明原出處。

意見反饋

由於自稱是開源交互圖書,讀者的反饋當然非常重要。如果你發現書中的錯誤,或者有更好的建議,不妨來這裏提 Issue:
https://github.com/labilezhu/envoy-insider/issues

English version

There is an English version: https://envoy-insider.mygraphql.com/en/latest/

image.png

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.