Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs SPA是浏览器中的一块巨石吗?_Reactjs_Angular_Single Page Application - Fatal编程技术网

Reactjs SPA是浏览器中的一块巨石吗?

Reactjs SPA是浏览器中的一块巨石吗?,reactjs,angular,single-page-application,Reactjs,Angular,Single Page Application,当我发布SPA时,我正在部署整个代码库。我们是否正在进入一个时代,在这个时代,我们可以说今天的花式水疗将在明天成为浏览器中的一块巨石?这取决于水疗的规模和范围。您的SPA是否处理单个业务域/功能?那也许它不是一块巨石。考虑微软如何描述微服务: 微服务是小型的、独立的、松散耦合的。一个小型的开发团队可以编写和维护一个服务 每个服务都是一个单独的代码库,可以由一个小型开发团队来管理 服务可以独立部署。团队可以更新现有服务,而无需重建和重新部署整个应用程序 服务负责保存自己的数据或外部状态。这与传统

当我发布SPA时,我正在部署整个代码库。我们是否正在进入一个时代,在这个时代,我们可以说今天的花式水疗将在明天成为浏览器中的一块巨石?

这取决于水疗的规模和范围。您的SPA是否处理单个业务域/功能?那也许它不是一块巨石。考虑微软如何描述微服务:

  • 微服务是小型的、独立的、松散耦合的。一个小型的开发团队可以编写和维护一个服务
  • 每个服务都是一个单独的代码库,可以由一个小型开发团队来管理
  • 服务可以独立部署。团队可以更新现有服务,而无需重建和重新部署整个应用程序
  • 服务负责保存自己的数据或外部状态。这与传统模型不同,传统模型由单独的数据层处理数据持久性
  • 服务通过使用定义良好的API相互通信。每个服务的内部实现细节对其他服务隐藏
  • 服务不需要共享相同的技术堆栈、库或框架
--

将这些点与您的SPA进行对比。如果您发现您的SPA捆绑包具有多种跨多个业务域的功能,那么请看看如何将这些功能拆分出来。什么可以独立部署

2016年底,微型前端一词首次出现在ThoughtWorks技术雷达中。它将微型服务的概念扩展到了前端世界。当前的趋势是构建一个功能丰富、功能强大的浏览器应用程序,即单页应用程序,它位于微服务架构之上。随着时间的推移,前端层(通常由一个单独的团队开发)会不断增长,维护起来也越来越困难。这就是我们所说的前端巨石

--

功能是否可以缩减为单个可共享组件?那么也许你会考虑一个微前端模式。

是/否/可能/视情况而定。
Monolith
到底是什么意思?例如,移动应用程序是巨石吗?20世纪90年代的原始术语是指任何试图在单个模块/系统/whatsit中完成所有工作的系统或设计,但现在这个术语被用作贬损旧技术并推广新技术的妖怪。这通常只是将复杂性转移到另一个点上。大多数SPA是一个前端,调用一组web服务。对我来说,这听起来不像是铁板一块。特别是如果它被分成HTML、javascript、CSS等常见的东西,@PanagiotisKanavos我同意这个词现在被用作一个妖怪。我并没有把它当作一个妖怪,尽管.@Nick.McDermaid甚至连monoliths都向数据库发出网络请求,所以monoliths是更简单的分布式系统。这没什么错。在模块化的整体中存在子划分,我的观点是这个问题没有意义。你到底是什么意思?你为什么在乎?只有当某个东西对于工作来说太大并且试图做太多的事情时,它才是一个整体,
太多
完全取决于当前的应用程序。同样,移动应用程序是一块巨石吗?如果大部分工作都是由服务器与数据库对话来完成的,那怎么可能呢?但是,如果您想创建一个组合应用程序,将多个其他模块/应用程序组合在一起,该怎么办?为此,您需要一个复合用户界面。如何部署这些组件?