邊車模式 (The Sidecar Pattern) - 介紹
講解如何透過邊車容器來「添加、擴增主應用功能」
前言
為因應環境、需求改變,工程師會替 Application 不斷增添新功能。然而這樣的做法卻會讓 Application 逐漸「特化」導致最後無法普遍應用在異質環境。 顯然隨時間演進會引發幾種問題:
- Application 越趨複雜、難以偵錯,最後變成巨型單體 (monolith)
- Git tree 出現許多分枝,管理困難
- 容器映像檔、程式碼重用性 (reusability) 降低
但正如微服務架構
的概念一樣,適當的將主應用功能與新功能進行解耦,便能提高重用性
與降低複雜度
。
以下將會為各位介紹邊車模式如何解決上述問題
邊車模式
不知道各位是否有印象,在看美劇或電影時常會看到有人騎哈雷時為了多載人會在旁邊外掛一輛車
整輛車的主體是位於中心的哈雷「負責前進」
,而旁邊的側車「增加載物、載人的可能性」
。
這正是邊車模式的概念來源:
透過其他容器來「增添、擴展」主要容器的功能性