从微前端到Monorepo:前端架构正在回归

更新日期: 2026-03-05 阅读: 27 标签: 微前端

几年前微前端火得一塌糊涂。独立开发、独立部署、技术栈随便选,团队各干各的,听起来特别美。

现在风向变了。越来越多团队开始回头想:当初拆得那么碎,到底图什么?

一个明显的趋势是:微前端还在用,但更多团队正在往Monorepo走。不是回到以前那个乱糟糟的单体应用,是走向更清楚、更好管的单体仓库模式。


谁还在用微前端

微前端不是没用,是能用上的场景越来越少。现在还在用的主要是这几类:

超大型ToB平台,像阿里云控制台那种。功能模块是不同团队甚至第三方开发的,模块之间几乎没有UI状态共享。这种场景适合。

老系统重构的过渡期。这是微前端最合理的用法。老代码jquery,新代码用react,两套东西要在一个页面里共存。微前端能让它们互不干扰,平稳过渡。

多技术栈的大公司。因为收购或者历史原因,公司里既有vue项目又有React项目,要强行整合到一个平台里。这时候微前端能当个缓冲。


微前端的隐性成本

对大多数中大型企业来说,微前端带来的麻烦比解决的问题多。

基建复杂好几倍。以前配一次Nginx就行的事,现在要管基座应用、JS沙箱、css隔离、多个子应用的CI/CD流水线、复杂的路由转发。这不是技术升级,是给自己找事。

跨应用通信特别麻烦。业务本身就是耦合的。用户登录态怎么同步?从A列表页跳到B详情页,得自己写一套复杂的状态同步机制。最后比直接在巨石应用里调函数还费劲。

用户体验有割裂感。经常是基座加载快,子应用加载慢,中间有明显等待。全局弹窗、深色模式这些细节很难统一,产品用起来像拼出来的。


Monorepo在回来

所以Monorepo又回到主流视野了。很多说放弃微前端的公司,不是退回乱糟糟的老代码,是换成了Monorepo加模块化的模式。

核心思路是:代码放一起,逻辑不耦合。用Turborepo、pnpm workspaces这些工具管起来,既保留模块化的好处,又享受统一仓库的方便。

Monorepo给前端工程化带来的价值很实在:

代码复用变简单了。微前端里要复用组件,得发版、升级、构建三步走。Monorepo里A应用直接本地路径引用packages/ui组件就行。改了源码,所有依赖立即生效,不用折腾版本管理。

依赖管理变清楚了。不用再面对"子应用用React 17,基座用React 18"这种依赖地狱。统一管理公共依赖,省磁盘空间,最重要的是技术栈统一了,团队能按同一套规范干活。

重构调试体验好多了。不用同时起基座和一堆子应用,所有代码都在本地。IDE的全局重构功能能用起来,跨包修改一次完成。这种代码级别的可控感,微前端给不了。

提交可以原子化了。一次修改涉及公共库和业务代码,一次提交全搞定。CI会自动识别哪些变了,只构建受影响的部分。代码库在任何时候都是自洽的,不会出现依赖断裂的问题。


没有银弹,只有权衡

微前端没死,在巨型SaaS平台和老系统改造这些特定场景里,它还有用。但对大多数追求高效协作和架构可控的团队来说,它的维护成本已经高过收益。

我们正在从物理隔离回到逻辑隔离。Monorepo受欢迎,是因为它用一个大仓库,换来了模块复用的便利和工程管理的确定性。它说了一个道理:

真正的解耦,不一定要把代码拆到不同仓库。把大家放在同一个屋檐下,但教会他们怎么保持房间整洁,才是更聪明的做法。

如果你的团队正在微前端的坑里爬不出来,可以考虑换条路走走。

本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://fly63.com/article/detial/13388

相关推荐

微前端概述

微前端的概念最早由 thoughtworks 在 2016 年提出。微前端作为近些年来前端发展的热词,大中型企业也在部署微前端应用,像百度,腾讯,阿里等第一梯队大厂也完成了微前端的应用部署,正在逐级优化框架内容

微前端的好处和缺陷

“微前端架构”是一种使用微服务模式构建前端应用的方法。微前端的理念是将你的前端拆分为一组可独立部署、松散耦合的应用。然后将这些应用组装在一起以创建面向用户的单个应用程序

基于 React & TS & Webpack 的微前端应用模板

在 Web 开发导论/微前端与大前端一文中,笔者简述了微服务与微前端的设计理念以及微前端的潜在可行方案。微服务与微前端,都是希望将某个单一的单体应用,转化为多个可以独立运行、独立开发、独立部署、独立维护的服务或者应用的聚合

实施微前端的六种方式

微前端架构是一种类似于微服务的架构,它将微服务的理念应用于浏览器端,即将 Web 应用由单一的单体应用转变为多个小型前端应用聚合为一的应用。由此带来的变化是,这些前端应用可以独立运行、独立开发、独立部署。

微前端总结

微前端概念是从微服务概念扩展而来的,摒弃大型单体方式,将前端整体分解为小而简单的块,这些块可以独立开发、测试和部署,同时仍然聚合为一个产品出现在客户面前

从微前端聊聊架构演进

就目前来看,微前端已经不是一个新话题了。随着越来越多的公司的深入研究,当前也提出了很多的解决方案。不过本文不是想要来介绍微前端,更想介绍项目如何一步步到达微前端架构的实际需求

实现微前端需要了解的 Vue Genesis 渲染器

核心的就是渲染器,它提供了最基础渲染能力,有了它,你可以实现微前端、微服务、远程组件、首屏渲染,甚至可以和 React、EJS 等配合使用。

什么是微前端

微前端的理念源自微服务,使用一个主应用作为主体框架和微应用加载器,根据不用的路由加载不同的微应用。微应用之间做到技术隔离,在展示上却是统一的。微前端主要用来解决单体应用在相对长的时间跨度下

微前端究竟好在哪?

微前端架构是一种设计方法,其中,前端应用被分解为多个松散而协同工作的半独立“微应用”。微前端的思想来源于微服务,其名称也遵循了微服务的命名方式。那么,微前端的优势和好处在哪?让我们一起通过这篇微前端教程来了解

微前端开发常见问题汇总

微前端开发常见问题汇总,前端应用可以独立运行、独立开发、独立部署。微前端不是单纯的前端框架或者工具而是一套架构体系。其在开发中会有各种问题,今天小编整理了一下分享给大家!

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!