2022年,是时候了解一下微前端的好处与缺陷了

453 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第2天。

近两年微前端的概念已经火遍了大街小巷,但还是有很多人对此一知半解。今天我们就聊一聊微前端。

什么是微前端

微前端简单说就是将一个前端应用分解为一组可以独立部署、松散耦合的应用组件,再讲这些组件组装在一起以创建面向用户的单个应用程序。

而微前端架构则是一种使用微服务模式构建前端应用的方法。

目前使用微前端架构有很多不同的技术方式,主要分为两种:

基座模式

又叫做管理式,通过一个主要的应用,管理其他应用。这种设计的难度小,方便落地,但是通用度低。

自组织模式

各个应用之间是相等的关系,不存在主次关系。但是设计难度大,不方便实施,但通用度高。

其中以基座模式用的比较多。

微前端的设计理念

微前端架构旨在解决单体应用在一个相对长的时间跨度下,由于参与人员、团队的变化导致开发困难的问题,以及应用代码臃肿耦合度等问题。

微前端就是分而治之、各自为战的理念,总结为如下几个特点:

  • 中心化:将各个应用入口汇集在一个应用注册表,可以是路由或其他应用映射
  • 数据共享:子应用间共享数据
  • 高内聚,低耦合

微前端的生命周期

微前端的好处

  • 复杂度可控
  • 独立部署:相互之间不存在依赖关系
  • 技术选型灵活
  • 高容错:某个应用的崩溃不影响其他应用
  • 可拓展

微前端的不足

  • 操作复杂性:应用的拆分基础依赖于基础设施的构建,一旦大量应用依赖于同一基础设施,那么维护变成了一个挑战
  • 项目过于庞大,代码编译慢,开发体差,需要一种更高维度的解耦方案
  • 构建速度慢
  • 应用迭代麻烦

应用场景

微前端因其分而治之的思想,所以中小型的项目使用微前端反而会将事情复杂化,因此更加适用于大型的独自为战的项目使用。