序
前端微服務(wù)好處在于可以通過(guò)不同的代碼庫(kù)對(duì)不同功能模塊的代碼進(jìn)行管理烛亦。這樣在企業(yè)項(xiàng)目實(shí)踐中坝咐,可以很好的將前端頁(yè)面進(jìn)行解耦。
比如撒桨,你的項(xiàng)目有ABC
三個(gè)模塊查刻,后端采用微服務(wù),而前端是一個(gè)spa
項(xiàng)目凤类。那么穗泵,如果迭代過(guò)程中,AB
模塊進(jìn)度正常谜疤,而C模塊由于某些原因不得不推遲佃延。那么發(fā)版的時(shí)候,前端就不得不屏蔽掉C
相關(guān)的頁(yè)面代碼夷磕÷乃啵或者,ABC
一起發(fā)版坐桩,但是發(fā)完之后尺棋,發(fā)現(xiàn)C有重大缺陷,需要回退绵跷。導(dǎo)致前端整個(gè)都要回退膘螟。從而,導(dǎo)致AB
也需要回退抖坪。
因此萍鲸,如果是采用前端微服務(wù),ABC
的前端功能分開(kāi)那么就不會(huì)因?yàn)?code>C的異常而導(dǎo)致AB
受到牽連擦俐。
在實(shí)際工作過(guò)程中脊阴,我基于umijs和umi-qiankun封裝了一套前端微服務(wù)的架構(gòu),以及為了方便開(kāi)發(fā),編寫(xiě)了一套命令工具嘿期。
我將它命名為 rabowl
:一個(gè)用來(lái)裝米的碗品擎。
源碼地址:https://gitee.com/rasir/rabowl
rabowl
框架主要解決一下幾個(gè)痛點(diǎn):
1、模塊分拆之后的公共配置引用备徐。
2萄传、模塊分拆之后的公共組件的互通。
3蜜猾、項(xiàng)目打包到同一個(gè)目錄下秀菱,便于集中部署。
4蹭睡、自動(dòng)創(chuàng)建子應(yīng)用衍菱。
5、將子應(yīng)用和主應(yīng)用放在一起肩豁,一個(gè)命令脊串,就可以啟動(dòng)主應(yīng)用和子應(yīng)用。方便開(kāi)發(fā)清钥。
6琼锋、通過(guò)簡(jiǎn)單配置就可以自動(dòng)化打包。
本專輯將通過(guò)以下幾個(gè)方面來(lái)闡述這個(gè)框架的用法:
1祟昭、使用方法概述
2缕坎、目錄結(jié)構(gòu)解析
3、rabowl命令解析
4篡悟、nginx 部署注意事項(xiàng)
5念赶、企業(yè)自動(dòng)化構(gòu)建配置示例
6、git submodule 子應(yīng)用管理改造