iT邦幫忙

鐵人檔案

2024 iThome 鐵人賽
回列表
JavaScript

前端也可以搞微服務?!前端最複雜的一種架構 系列

或許你聽過或是沒聽過以下詞彙,「微前端」、「微應用」、「前端微服務」,這些都是相同的東西。

微前端可以讓單一應用程式有自己的開發、部署、執行的生命週期,透過某種機制來達到相互溝通的能力。微前端是一個很好的切分單位,可以更容易讓更大的團隊溝組織通協作開發。

但微前端並不容易,我會把這來龍去脈和心酸血淚逐條逐項分享,讓想嘗試這架構的你可以少走點彎路,其中也包含很多就算不是實作微前端也會遇到的前端基礎建設問題,讓我們各個擊破吧!

鐵人鍊成 | 共 30 篇文章 | 33 人訂閱 訂閱系列文 RSS系列文
DAY 1

(一) 前言,開始了解微前端之前...

前言 大家好!我是竹子~是個資歷約 5 年左右的前端工程師,目前是 React, Vue 雙刀流。喜歡在社群衝浪,遊走各大群組,偶爾會冒出講些幹話。 第一次參加...

DAY 2

(二) 原來這是微前端

原來這是微前端 什麼是微前端? 或許你聽過或是沒聽過以下詞彙,「微前端」、「微應用」、「前端微服務」。這些都是相同的東西,後面的文章我都會用「微前端」來稱呼。...

DAY 3

(三) 我是怎麼樣開始寫微前端?

我是怎麼樣開始寫微前端? 在進入解決方案篇章前,先來說說我身上發生什麼事,為什麼會開始玩微前端?剛開始是進入公司後,CTO 想要推行微前端,我就必須了解這一塊相...

DAY 4

(四) 微前端的優劣分析

微前端的優劣分析 既然產生這種架構必然會產生一些好處,也相對帶來一些壞處。雖然推廣了微前端,但也不是什麼問題都要用微前端解決。俗話說,「不要拿了錘子,看到什麼都...

DAY 5

(五) 常見的微前端解決方案

常見的微前端解決方案 要實施微前端有很多解決方案,目前有幾種主流的方法大致上會有幾種。 以 Application 層級來說 xhr/fetch javascr...

DAY 6

(六) 微前端面臨的議題

微前端面臨的議題 前期資訊查找與準備 當要採用一個技術前,第一步肯定是要做充分的資料收集與測試。我剛接手這個需求時,我第一步先把公司前端前手的研究進度重新閱覽一...

DAY 7

(七) 微前端的模組共用

微前端的模組共用 隨著微前端應用增加,每一個個體都會打包一些既定的函式庫。跟微服務不同,微前端需要讓客戶承擔流量上的負擔,可能造成額外的流量開支與效能開支,盡可...

DAY 8

(八) 微前端的溝通

微前端的溝通 在微前端中,跨應用溝通是一個非常麻煩的事,你沒辦法像平時習慣的一個 “import” 語法來傳遞共用。那到底在微前端怎麼做跨應用溝通呢? 後端有...

DAY 9

(九) 全域單例狀態管理

全域單例狀態管理 什麼是單例狀態? 開始講到單例狀態就要稍微舉例一下什麼是單例狀態,其實就是泛指所有 Singleton 的物件。舉凡整個應用程式只有唯一的狀態...

DAY 10

(十) 樣式管理問題

樣式管理問題 在前端來說,CSS 是一個非常重要的架構,影響著程式的呈現和畫面的呈現。但 CSS 終究不是程式,能做到的事情是有限的。過去到現在有許多技術都想去...