Bookinfo應用分析
更新時間 2024-02-18 10:03:06
最近更新時間: 2024-02-18 10:03:06
分享文章
本節主要介紹Bookinfo應用分析
Bookinfo是一個模仿在線書店的應用,頁面上會顯示一本書籍的描述,書籍的細節(如頁數),以及關于書籍的一些評論。
Bookinfo應用由四個單獨的服務構成,幾個服務是由不同的語言編寫的。這些服務對應用服務網格ASM并無依賴,但是構成了一個有代表性的服務網格的例子,即由多個服務、多個語言構成,且reviews服務具有多個版本。這四個服務的說明如下:
- productpage:會調用details和reviews兩個服務,用來生成頁面。
- details:包含了書籍的信息。
- reviews:包含了書籍相關的評論,同時會調用ratings服務。
- ratings:包含了由書籍評價組成的評級信息。
其中,reviews服務有3個版本:
- v1(1.5.1)版本會調用ratings服務,并使用1到5個黑色星形圖標來顯示評分信息。
- v2(1.5.0)版本不會調用ratings服務。
- v3(1.5.2)版本會調用ratings服務,并使用1到5個紅色星形圖標來顯示評分信息。
說明為了直觀的展示灰度版本之間流量切換情況,本教程以reviews服務的v1版本(黑星形)、v3版本(紅星形)為例進行說明。
圖 Bookinfo應用的端到端架構

在ASM中運行Bookinfo應用,無需對應用自身做出任何改變,只需簡單的在ASM環境中對服務進行配置和運行,即把Envoy Sidecar注入到每個服務之中。最終的部署結果如下圖所示。
圖 Envoy Sidecar注入之后的Bookinfo應用

所有的服務都和Envoy Sidecar集成在一起,被集成服務的所有出入流量都被Sidecar所劫持,這樣就可以利用ASM為應用提供服務路由、遙測數據收集以及策略實施等功能。