微前端学习
最编程
2024-07-10 14:00:09
...
这是我第17篇简书
微前端的价值
微前端架构具备以下几个核心价值:
- 技术栈无关 主框架不限制接入应用的技术栈,子应用具备完全自主权
- 独立开发、独立部署 子应用仓库独立,前后端可独立开发,部署完成后主框架自动完成同步更新
- 独立运行时 每个子应用之间状态隔离,运行时状态不共享
微前端架构旨在解决单体应用在一个相对长的时间跨度下,由于参与的人员、团队的增多、变迁,从一个普通应用演变成一个巨石应用后,随之而来的应用不可维护的问题。这类问题在企业级 Web 应用中尤其常见。
针对中后台应用的解决方案
中后台应用由于其应用生命周期长(动辄 3+ 年)等特点,最后演变成一个巨石应用的概率往往高于其他类型的 web 应用。而从技术实现角度,微前端架构解决方案大概分为两类场景:
- 单实例:即同一时刻,只有一个子应用被展示,子应用具备一个完整的应用生命周期。通常基于 url 的变化来做子应用的切换。
- 多实例:同一时刻可展示多个子应用。通常使用 Web Components 方案来做子应用封装,子应用更像是一个业务组件而不是应用。
推荐方案
看了下蚂蚁的微前端落地实践:
https://github.com/umijs/qiankun
(目前有4千多颗星)
构建出一套全链路的面向中后台场景的产品接入平台,目的是解决不同产品之间集成困难、流程割裂的问题,希望接入平台后的应用,不论使用哪种技术栈,在运行时都可以通过自定义配置,实现不同应用之间页面级别的*组合,从而生成一个千人千面的个性化控制台。
clone下来后可以看到:
前端微服务化,是微服务架构在前端的实施,每个前端应用都是完全独立(技术栈、开发、部署、构建独立)、自主运行的,最后通过模块化的方式组合出完整的前端应用。其架构如下图所示:
采用这种方式意味着,一个页面上同时存在二个及以上的前端应用在运行。而路由分发式方案,则是一个页面只有唯一一个应用。
推荐学习:《前端架构:从入门到微前端》
上一篇: 传奇 GOM 引擎微端设置教程
下一篇: 微前端实践
推荐阅读
-
计算机 毕业设计 Python 深度学习 房价预测 房源可视化 房源爬虫 二手房可视化 二手房爬虫 递归决策树模型 机器学习 深度学习 大数据 毕业设计
-
压缩从后端到前端的返回数据的注释方式--方案
-
常见的前端开发面试问题及其答案
-
[机器学习和神经网络荣获诺贝尔奖] 科学边界的扩展与技术创新 - IV.个人对机器学习和神经网络的看法
-
SSM 框架学习(七、MyBatis-Plus 高级用法:优化持久层开发)
-
微信小程序/uniapp 动态修改 tabBar 信息和常见错误报告
-
【论文阅读】分离与联合:用于少量学习的简单元传输-摘要
-
机器学习捷径:自动特征工程综合分析(附代码示例)
-
ROS 理论与实践学习笔记 - 5 ROS 机器人系统模拟 URDF 集成 Gazebo
-
网页前端开发的 HTML 入门:标题标签 heading