近几年微服务这个词非常火热,以至于后端出现了很多差不多同质化的微服务搭建教程,例如 spring cloud,duddo 之类的教程。
微服务我知道是什么,伴随而生的还有一个微前端,微前端具体是什么鬼东西?我唯一能想到理解是,微前端,应该说是 B/S 前端,可能是为更好的开发和接入微服务的后台系统而生的。所以就出现的微前端,没有微服务就没有微前端。
按照这种理解,我怎么微前端感觉是用一个服务器搭建一个向外的网站,用户所有操作都会经过这个网站服务器,服务器根据请求向指定的服务器请求查询资源或编辑资源。
微前端应该不是把 B/S 前端独立分块吧,如果是分,那怎么个分法?像 C/S 程序那样?如果是这样的话,那我写几个 C/S 程序,向我搭建的一个用微服务搭建的网络系统发送请求,那这几个 C/S 程序整体看待,也算微前端了啊。如果是这样的话,那这种微前端在微服务之前就出现了。
还是在 B/S 程序里面可以嵌入多个其他的 B/S 程序,在前端 html 里用 Iframe 标签接入?还是像微信和支付宝的小程序那样的么?如果是指微信那样的小程序,那这顶多算插件把。微前端=分插件开发前端?
有做过这方面的开发的,能说下微前端具体是做什么的,是不是只属于 B/S 前端的?如果是,那就得意味着经常会有跨域请求。
1
noe132 2020-03-10 18:48:18 +08:00 via Android
概念炒作罢了。大致就是通过合理的模块化分和 code spiltting 降低耦合和包体积大小
|
2
libook 2020-03-10 18:53:34 +08:00 2
微前端确实是从后端微服务思想衍生过来的,但是并不是说一定要和后端微服务一起用,只是个思想借鉴。
B/S 和 C/S 是非常古老的概念了,自从富前端、单页面应用出现之后,B/S 和 C/S 就没有区别了,它是由浏览器端和服务端构成的,但是同时又是按照客户端与服务器端的思路来开发的,将浏览器上的页面与服务器功能进行解耦。 后端微服务解决的问题主要是降低系统复杂度、性能隔离、混合多种技术栈,那么微前端是不是也有相似的问题要解决。 比如一个有 5 年历史的后台管理系统,5 年间功能一直都在增加,最一开始用的是 Angualr 框架的第 1 个版本,但是五年后的今天 Angular 已经出了第 9 个大版本了,功能和设计以及使用方式都发生了翻天覆地的变化,那么摆在你面前的有两个方案,1. 把旧功能全部用最新版 Angular 重写。2. 新功能也用 Angualr 旧版本继续开发。 以及有的时候需觉得两个功能之间并没有啥关系,而有一部分适合用 React,另一半部分更适合用 Vue,以及一些简单的页面适合直接用原生 JS 或 JQuery。 那么第 3 个方案就是用微前端技术,将复杂的前端系统按照对应的领域拆分成不同组件,可以分开开发、设计以及用不同的技术,最后用微前端技术整合成一个网站。 |
3
libook 2020-03-10 18:54:17 +08:00
技术是用来解决问题的,没有问题没必要硬上,会事倍功半。
|
4
janxin 2020-03-10 19:52:08 +08:00
主要是炒作概念...当然提出来也是能解决一部分 DRY 带来的问题
|
5
ChefIsAwesome 2020-03-10 20:07:27 +08:00 1
挺 sb 的概念……网站本来就可以是相互独立的子程序,靠 URL 连起来就行了。非要做成个单页面的,搞搞动态加载,然后就叫微服务了……
|
6
Chingim 2020-03-10 20:28:01 +08:00 via Android
iframe 就是微前端
每个 iframe 相对独立 🐶 |
7
wangxiaoaer 2020-03-10 20:59:20 +08:00
寸 草 不 生
傻 事 屌 逼 后 前 台 端 语 概 言 念 广 多 |
9
w292614191 2020-03-11 08:37:34 +08:00
我现在就是畸形开发,每个 SpringBoot 写自己一部分的页面加后台,一个微服务来充当主框架。
然后通过 SpringGateway 来串起来,类似: gateway/main gateway/A/view gateway/A/getList gateWay/B/view gateWay/B/Save |
10
onfuns 2020-03-11 09:33:45 +08:00
就是九九归一,前端要想站住脚,必须提出一些专有名词,这样才能显得高大上啊。
|
11
zarte 2020-03-11 09:45:14 +08:00
前端就是各种整活。
|
12
chanchan 2020-03-11 10:48:12 +08:00
又整新活了?不是"大前端"吗,怎么又"微前端"了
|
13
buhi 2020-03-11 12:09:30 +08:00
就是一种生造出来的名词, 用来描述一个早已有之的概念, 但是呢, 为了要显得很厉害, 所以要用一个特别的名词
|