系统的组织在不断变化的同时,其设计和架构也在不断地调整。
如同数据库的分库分表一样,既然一个组织的部门已经过于庞大,就进一步将它细化。
软件的不同部分又被拆分到不同的部门之下。
随着不同部门的业务发展,技术栈越来越难统一,出现了多样化。
在走向多样化后,用户越来越厌倦一家公司的应用软件分散在多个不同应用上。
应用的获客成本越来越高,应用又一次走向聚合。
在分离了前后端之后,拆分降低了系统的复杂度,并进一步提高了软件的开发效率。
随着业务不断扩张,需求也不断扩张,应用又开始变得臃肿。
既然应用变大了,我们就继续往下拆分,拆分成更小的单位。
-----摘选自《前端架构 从入门到微前端》
“任何物体在没有接受外界能量的条件下,总是朝着熵增(无序)的方向变化。”
分库分表,前后端分离,聚合,拆分到粒度更小的单位等软件架构解决方案,解决的核心问题是,熵减。
应用臃肿,管理成本增加,获客成本增加,组织臃肿等表现形式,表现形式的本质是,熵增。
总的来说,“微前端”这个名词,以及它所带来的一系列策略。都是为了解决软件和组织在某一阶段的,熵增的问题。
一、微前端架构
特点
为什么需要
技术拆分方式
说明:
①微件(Widget),flutter框架作为移动端的解决方案,就是微件化的实践之一。
②Web component技术的推广受限于浏览器的支持程度。
微前端架构设计
架构模式
设计理念
微架构
二、实战篇-前端微服务化
缘起:
适用性:
设计方案:
说明:
①Single-SPA官网https://single-spa.js.org/docs/examples/
②Single-SPA参考GitHub-https://github.com/single-spa/single-spa
原文:https://www.cnblogs.com/bearRunning/p/12242179.html