什么是微前端

微前端是一种将大型应用拆分为多个独立子系统的技术,通过统一入口提供服务。其特点包括代码库小、独立部署和无需重写现有项目。然而,开发中存在调试复杂、系统间协同困难等问题,生产环境中则面临版本控制挑战和性能问题。single-spa、qiankun和icestark是常见的微前端框架。考虑使用微前端需评估系统复杂度、集成需求和项目协调能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将多个独立的系统,通过统一的入口提供给用户使用的聚合系统 。而开发,测试,上线,都是子系统自行研发,测试 ,上线。

微前端的特点

  • 代码库更小,可以将系统拆分成多个子系统。
  • 独立部署,子系统堵路部署,没有技术栈限制
  • 无需重新开发当前项目,可以直接集成

微前端的不足

  • 开发中
    • 需要运行多个子系统才能开发和调试(至少是base系统和业务系统)
    • 多个系统之间的约定,已经架构设计
    • 性能问题(单页面系统=>ios, 微架构=> Android)
  • 生产环境
    • 多个系统之间的版本控制(业务流程可能会出现耦合的情况)
    • 浏览器会加载多个框架代码(子系统采用不同的技术框架,如vue, react, 以及UI框架)
    • 多个系统之间通信复杂 ,数据共享操作很繁琐。

目前主流的single-spa框架

  1. single-spa 社区公认的主流方案,可以基于它做二次开发
  2. qiankun:基于 single-spa 封装,增加 umi 特色,增加沙箱机制(JS、ShadowDOM 等)
  3. icestark:类似于 single-spa 实现,React 技术栈友好,阿里的另一个轮子
  4. Micro-Frontends:类似于 single-spa 实现,React 技术栈友好,阿里的另一个轮子

关于是否使用微前端架构的思考

  1. 系统是否臃肿,开发,构建性能很差,需要重构(自虐),功能拆分
  2. 多个系统,需要集成到一起,使用统一入口提供给用户使用
  3. 能不能推动整个项目的规划和落实(多个系统配合 === 开发的噩梦, 流程失控)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值