为什么微前端开始在流行:后端解耦,前端聚合

采用新技术,更多不是因为先进,而是因为它能解决痛点。

过去,我一直有一个疑惑,人们是否真的需要微服务,是否真的需要微前端。毕竟,没有银弹。当人们考虑是否采用一种新的架构,除了考虑它带来好处之外,仍然也考量着存在的大量的风险和技术挑战。

前端遗留系统迁移

自微前端框架 Mooa 及对应的《微前端的那些事儿》发布的两个多月以来,我陆陆续续地接收到一些微前端架构的一些咨询。过程中,我发现了一件很有趣的事:解决遗留系统,才是人们采用微前端方案最重要的原因

这些咨询里,开发人员所遇到的情况,与我之前遇到的情形并相似,我的场景是:设计一个新的前端架构。他们开始考虑前端微服务化,是因为遗留系统的存在。

过去那些使用 Backbone.js、Angular.js、Vue.js 1 等等框架所编写的单页面应用,已经在线上稳定地运行着,也没有新的功能。对于这样的应用来说,我们也没有理由浪费时间和精力重写旧的应用。这里的那些使用旧的、不再使用的技术栈编写的应用,可以称为遗留系统。而,这些应用又需要结合到新应用中使用。我遇到的较多的情况是:旧的应用使用的是 Angular.js 编写,而新的应用开始采用 Angular 2+。这对于业务稳定的团队来说,是极为常见的技术栈。

在即不重写原有系统的基础之下,又可以抽出人力来开发新的业务。其不仅仅对于业务人员来说, 是一个相当吸引力的特性;对于技术人员来说,不重写旧的业务,同时还能做一些技术上的挑战,也是一件相当有挑战的事情。

后端解耦,前端聚合

而前端微服务的一个卖点也在这里,去兼容不同类型的前端框架。这让我又联想到微服务的好处,及许多项目落地微服务的原因:

在初期,后台微服务的一个很大的卖点在于,可以使用不同的技术栈来开发后台应用。但是,事实上,采用微服务架构的组织和机构,一般都是中大型规模的。相较于中小型,对于框架和语言的选型要求比较严格,如在内部限定了框架,限制了语言。因此,在充分使用不同的技术栈来发挥微服务的优势这一点上,几乎是很少出现的。在这些大型组织机构里,采用微服务的原因主要还是在于,使用微服务架构来解耦服务间依赖

而在前端微服务化上,则是恰恰与之相反的,人们更想要的结果是聚合,尤其是那些 To B(to Bussiness)的应用。

在这两三年里,移动应用出现了一种趋势,用户不想装那么多应用了。而往往一家大的商业公司,会提供一系列的应用。这些应用也从某种程度上,反应了这家公司的组织架构。然而,在用户的眼里他们就是一家公司,他们就只应该有一个产品。相似的,这种趋势也在桌面 Web 出现。聚合成为了一个技术趋势,体现在前端的聚合就是微服务化架构。

兼容遗留系统

那么,在这个时候,我们就需要使用新的技术、新的架构,来容纳、兼容这些旧的应用。而前端微服务化,正好是契合人们想要的这个卖点呗了。

你说呢?

原文发布于微信公众号 - phodal(phodal-weixin)

原文发表时间:2018-06-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏BestSDK

使用基于AI的云管理工具,场景至关重要

虽然人工智能的云计算管理工具目前还处于采用的早期阶段,但IT行业专家表示采用这样的工具可以减少与性能和根本原因分析相关的大量工作。 那些致力于深入了解云计算基础...

3879
来自专栏Python专栏

内推 | 第十一期:运维开发工程师

2. 梳理优化系统后台数据库的性能,保证执行效率,建立相关备份与恢复机制,保障数据存储安全;

1702
来自专栏云计算D1net

采用更好的私有云意味着更好的多云策略

导语 在许多情况下,增强的私有云可能是企业实现多云战略的最佳选择,而IBM公司估计,从2017年开始,企业采用私有云每年的支出将超过500亿美元,到2020年将...

3488
来自专栏CSDN技术头条

移动应用如何埋点收集什么数据以便于统计分析?

国内比较普遍的第三方统计工具是友盟和talking data,在大多数的情况下这两个差别不大,但是如果你的app是游戏或者需要用到互联网金融的一些垂直细分统计,...

2748
来自专栏云计算D1net

五步应对云计算PaaS安全性挑战

当谈及安全性和云计算模型时,平台即服务(PaaS)有着它自己特殊的挑战。与其他的云计算模型不同,PaaS安全性所要求的应用程序安全性专业知识往往是大多数公司无法...

3504
来自专栏CSDN技术头条

星环科技创始人兼CTO孙元浩:现代数据仓库的技术演变和关键特性

【CSDN现场报道】2015年12月10-12日,由中国计算机学会(CCF)主办,CCF大数据专家委员会承办,中国科学院计算技术研究所、北京中科天玑科技有限公司...

2147
来自专栏腾讯大数据的专栏

迎春版移动生态报告

移动生态报告迎春版以腾讯开放平台,腾讯大数据以其相关数据挖掘为基础,分别描述了Android用户透视,应用生态和开发者,并且勾勒出未来相关的趋势。 ? ? ? ...

1927
来自专栏机器人网

AI正以五种方式彻底颠覆软件测试手段?

AI技术正以五种方式改变软件测试工作测试人员应做好与AI机器人协作的准备,并将其作为能够在软件开发过程当中有效减轻日常工作量的完美助手。人工软件测试方法仍然具备...

3715
来自专栏顾宇的研习笔记

推进微服务落地的 7 个步骤

微服务实施常被忽视的 5 个难点中描述了实施微服务常见的主要阻碍。本文针对前文提到的5个难点提出了 7 个步骤。每个步骤分别包含了管理和技术两方面的建议。

1252
来自专栏cloudskyme

云计算产生的背景

1.经济方面 (1) 全球化经济一体化 (2)日益复杂的世界和不可确定性的黑天鹅现象 (3) 需求是云计算发展的动力。 2.社会层面 (1)数字一代的崛起 (2...

2.7K14

扫码关注云+社区

领取腾讯云代金券