• 请不要在回答技术问题时复制粘贴 AI 生成的内容
tctc4869
V2EX  ›  程序员

微前端是什么?是伴随微服务炒作的概念,还是只配合后端微服务而生的?

  •  
  •   tctc4869 · Mar 10, 2020 · 3547 views
    This topic created in 2264 days ago, the information mentioned may be changed or developed.

    近几年微服务这个词非常火热,以至于后端出现了很多差不多同质化的微服务搭建教程,例如 spring cloud,duddo 之类的教程。

    微服务我知道是什么,伴随而生的还有一个微前端,微前端具体是什么鬼东西?我唯一能想到理解是,微前端,应该说是 B/S 前端,可能是为更好的开发和接入微服务的后台系统而生的。所以就出现的微前端,没有微服务就没有微前端。

    按照这种理解,我怎么微前端感觉是用一个服务器搭建一个向外的网站,用户所有操作都会经过这个网站服务器,服务器根据请求向指定的服务器请求查询资源或编辑资源。

    微前端应该不是把 B/S 前端独立分块吧,如果是分,那怎么个分法?像 C/S 程序那样?如果是这样的话,那我写几个 C/S 程序,向我搭建的一个用微服务搭建的网络系统发送请求,那这几个 C/S 程序整体看待,也算微前端了啊。如果是这样的话,那这种微前端在微服务之前就出现了。

    还是在 B/S 程序里面可以嵌入多个其他的 B/S 程序,在前端 html 里用 Iframe 标签接入?还是像微信和支付宝的小程序那样的么?如果是指微信那样的小程序,那这顶多算插件把。微前端=分插件开发前端?

    有做过这方面的开发的,能说下微前端具体是做什么的,是不是只属于 B/S 前端的?如果是,那就得意味着经常会有跨域请求。

    13 replies    2020-03-11 12:09:30 +08:00
    noe132
        1
    noe132  
       Mar 10, 2020 via Android
    概念炒作罢了。大致就是通过合理的模块化分和 code spiltting 降低耦合和包体积大小
    libook
        2
    libook  
       Mar 10, 2020   ❤️ 2
    微前端确实是从后端微服务思想衍生过来的,但是并不是说一定要和后端微服务一起用,只是个思想借鉴。
    B/S 和 C/S 是非常古老的概念了,自从富前端、单页面应用出现之后,B/S 和 C/S 就没有区别了,它是由浏览器端和服务端构成的,但是同时又是按照客户端与服务器端的思路来开发的,将浏览器上的页面与服务器功能进行解耦。

    后端微服务解决的问题主要是降低系统复杂度、性能隔离、混合多种技术栈,那么微前端是不是也有相似的问题要解决。

    比如一个有 5 年历史的后台管理系统,5 年间功能一直都在增加,最一开始用的是 Angualr 框架的第 1 个版本,但是五年后的今天 Angular 已经出了第 9 个大版本了,功能和设计以及使用方式都发生了翻天覆地的变化,那么摆在你面前的有两个方案,1. 把旧功能全部用最新版 Angular 重写。2. 新功能也用 Angualr 旧版本继续开发。
    以及有的时候需觉得两个功能之间并没有啥关系,而有一部分适合用 React,另一半部分更适合用 Vue,以及一些简单的页面适合直接用原生 JS 或 JQuery。

    那么第 3 个方案就是用微前端技术,将复杂的前端系统按照对应的领域拆分成不同组件,可以分开开发、设计以及用不同的技术,最后用微前端技术整合成一个网站。
    libook
        3
    libook  
       Mar 10, 2020
    技术是用来解决问题的,没有问题没必要硬上,会事倍功半。
    janxin
        4
    janxin  
       Mar 10, 2020
    主要是炒作概念...当然提出来也是能解决一部分 DRY 带来的问题
    ChefIsAwesome
        5
    ChefIsAwesome  
       Mar 10, 2020   ❤️ 1
    挺 sb 的概念……网站本来就可以是相互独立的子程序,靠 URL 连起来就行了。非要做成个单页面的,搞搞动态加载,然后就叫微服务了……
    Chingim
        6
    Chingim  
       Mar 10, 2020 via Android
    iframe 就是微前端
    每个 iframe 相对独立 🐶
    wangxiaoaer
        7
    wangxiaoaer  
       Mar 10, 2020
    寸 草 不 生
    傻 事
    屌 逼
    后 前
    台 端
    语 概
    言 念
    广 多
    tctc4869
        8
    tctc4869  
    OP
       Mar 10, 2020
    @Chingim 这么讲的话,微前端,早在 html 诞生不久就出生了
    w292614191
        9
    w292614191  
       Mar 11, 2020
    我现在就是畸形开发,每个 SpringBoot 写自己一部分的页面加后台,一个微服务来充当主框架。
    然后通过 SpringGateway 来串起来,类似:
    gateway/main
    gateway/A/view
    gateway/A/getList

    gateWay/B/view
    gateWay/B/Save
    onfuns
        10
    onfuns  
       Mar 11, 2020
    就是九九归一,前端要想站住脚,必须提出一些专有名词,这样才能显得高大上啊。
    zarte
        11
    zarte  
       Mar 11, 2020
    前端就是各种整活。
    chanchan
        12
    chanchan  
       Mar 11, 2020
    又整新活了?不是"大前端"吗,怎么又"微前端"了
    buhi
        13
    buhi  
       Mar 11, 2020
    就是一种生造出来的名词, 用来描述一个早已有之的概念, 但是呢, 为了要显得很厉害, 所以要用一个特别的名词
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2976 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 56ms · UTC 02:26 · PVG 10:26 · LAX 19:26 · JFK 22:26
    ♥ Do have faith in what you're doing.