什么是微前端

微前端是一种类似于微服务的架构,它将微服务的理念应用于浏览器端,即将 Web 应用由单一的单体应用转变为多个小型前端应用聚合为一的应用。各个前端应用可以独立运行、独立开发、独立部署。(建议先了解微服务)

微前端的优缺点

优点

  • 可以与时俱进,不断引入新技术/新框架

前端技术栈日新月异,微前端可以在维护好遗留系统的前提下,不断引入新技术和新框架,提高开发效率、质量、用户体验。微前端可以很好的实现应用和服务的隔离,互相之间几乎没有影响,可以很好的支持团队引入新技术和新框架。

  • 局部/增量升级

对于许多组织来说,追求增量升级就是他们迈向微前端的第一步。对他们来说,老式的大型单体前端要么是用老旧的技术栈打造的,要么就充斥着匆忙写成的代码,已经到了该重写整个前端的时候了。一次性重写整个系统风险很大,我们更倾向一点一点换掉老的应用,同时在不受单体架构拖累的前提下为客户不断提供新功能。

  • 代码简洁、解耦、更易维护

微前端体系下,每个小模块的代码库要比一个单体前端的代码库小很多。对开发者来说这些较小的代码库处理起来更简单方便。而且微前端还能避免无关组件之间不必要的耦合,让代码更简洁。我们可以在应用的限界上下文处划出更明显的界限,更好地避免无意间造成的这类耦合问题。

  • 独立部署

就像微服务一样,微前端的一大优势就是可独立部署的能力。这种能力会缩减每次部署涉及的范围,从而降低了风险。不管你的前端代码是在哪里托管,怎样托管,各个微前端都应该有自己的持续交付管道;这些管道可以将微前端构建、测试并部署到生产环境中。我们在部署各个微前端时几乎不用考虑其他代码库或管道的状态;就算旧的单体架构采用了固定、手动的按季发布周期,或者隔壁的团队在他们的主分支里塞进了一个半成品或失败的功能,也不影响我们的工作。

缺点

  • 重复依赖

不同应用之间依赖的包存在很多重复,由于各应用独立开发、编译和发布,难免会存在重复依赖的情况。导致不同应用之间需要重复下载依赖,额外再增加了流量和服务端压力。

  • 团队之间更加分裂

大幅提升的团队自治水平可能会让各个团队的工作愈加分裂。各团队只关注自己的业务或者平台功能,在面向用户的整体交付方面,会导致对用户需求和体现不敏感,和响应不及时。

什么是微前端及微前端优缺点相关推荐

  1. postmessage 游戏窗口内无效_前端的微前端在交通项目内的应用实践

    项目背景 业务的快速发展,越来越多的接入渠道(百度.快应用等等),人员增加,开发成本与管理成本都上升,效率反而越来越低,团队的人员重复造轮子,毫无挑战,当然市面上也有多端解决方案,但是不太适用目前的业 ...

  2. 乾坤 微前端_微前端架构初探以及我的前端技术盘点

    前言 最近几年微前端一直是前端界的热门议题, 它类似于微服务架构, 主要面向于浏览器端,能将一个复杂而庞大的单体应用拆分为多个功能模块清晰且独立的子应用,且共同服于务同一个主应用.各个子应用可以独立运 ...

  3. 网易微专业之《前端开发工程师》学习笔记(1)

    何为网易微专业? 微专业是由网易云课堂联合各领域知名专家,以就业为导向,精心打造的职业培训方案. 按要求完成学习,考试通过可获得专业认定证书,令你求职或加薪多一份独特优势. 一个微专业包含了多门必修课 ...

  4. 前端怎么使用jsessionid_前端搞微前端 | 侑夕 - 如何落地微前端一体化运营工作台...

    下期预告 前端早早聊大会目标成为用得上.听得懂.抄得走的技术大会,计划 2020 年办 >= 15 期,由前端早早聊与掘金联合举办,前端早早聊大会行程动态.录播视频/PPT/讲稿资料下载请关注 ...

  5. 前端项目微金所1 - bootstrap模板,Compatible(兼容),Viewport(视口),条件注释,第三方依赖,MediaQuery媒体查询...

    前端项目微金所笔记1 基础的bootstrap模板 <!DOCTYPE html> <html lang="en"><head><meta ...

  6. 【微前端】591- 微前端在小米 CRM 系统的实践

    前言 微前端跟Serverless,当前前端热门话题. @木子朗,小米 前端工程师,目前专注于前端架构.前端工程化,热衷于打造高质量.高性能.用户体验一流的产品.个人网站:https://www.li ...

  7. ruoyi-UI (若依)微服务版 vue前端使用及分析(2021-4-13更新)

    ruoyi-UI (若依) 微服务版 vue前端版本使用及分析(2021-4-13更新) 文章目录 ruoyi-UI (若依) 微服务版 vue前端版本使用及分析(2021-4-13更新) 1. 目录 ...

  8. 你知道什么是微前端吗?微前端和微服务有什么关系?

    微前端介绍 前提摘要:Jpunster 最近电脑最近在维修,所以不能及时更新公众号. 今天由我copper(Jpunster技术启蒙老师+好兄弟)来给大家分享一下微前端方面的知识. 最近几年,微服务架 ...

  9. qiankun 微前端_微前端方案 qiankun(实践及总结)

    ❝ 作者:沉末_ 链接:https://juejin.im/post/5ed73b73e51d4578724e3fa4 ❞ 什么是微前端? 我们先来看两个实际的场景: 1. 复用别的的项目页面 通常, ...

  10. 17 | 从后端到前端:微服务后,前端如何设计?

    从后端到前端:微服务后,前端如何设计 Reference DDD实战课

最新文章

  1. android WebSocket 发送图片
  2. 怎么用python画花瓣_怎么用python画花朵
  3. 利用系统滴答时间计算实际程序运行时间
  4. 【哈理工实验二】HTML+CSS3 旋转齿轮特效
  5. 顶级数据库行会Percona阿里全面解析下一代云数据库技术
  6. merge语句使用_使用SQL:2003 MERGE语句的奥术魔术
  7. JS之返回数组指定元素的slice
  8. 1199元起!搭载120W神仙秒充 Redmi Note 11 系列发布
  9. regester正则用法_Regester学习笔记
  10. sql server 跟踪_SQL Server作业性能–跟踪
  11. 吴恩达课后作业学习1-week4-homework-two-hidden-layer -1
  12. CentOS更改主机名
  13. 【转】J2SDK1.5+TOMCAT5.5 最详细有效安装及配置
  14. Markdown中LaTeX公式编号
  15. ALPS 2.3.0 安装教程
  16. h5网页ios中滑动字体变大
  17. HDU 5296 Annoying problem LCA+树状数组
  18. 美团小哥用计算机,美团2020算法工程师编程题--外卖小哥的保温箱
  19. 8.23 正点原子领航者V1开发板学习之EEPROM
  20. 产学交流 | 重庆理工大学计算机科学与工程学院信息管理系一行到访芝诺数据...

热门文章

  1. 撤消 git rebase
  2. python采用强制缩进的方式使得代码具有极佳的可读性_计算机专业高级语言程序设计课程改革探索...
  3. MySQL中修改数据的命令: INSERT、UPDATA、DELETE。
  4. 量子力学第十一弹——变分法
  5. java格林时间转换_Java 格林威治时间字符串转本地Date对象
  6. 15亿美元!软银联合GungHo收购手游巨头Supercell
  7. opencv23:Histogram直方图反向投影
  8. 实训第二天的代码优化
  9. uniapp中使用阿里云视频点播功能
  10. 菜鸟日记(yzy) 微信公众号网页的开发-websocket