基于微前端架构的多域名项目的管理平台及高度聚合部署方法技术

技术编号:35429984 阅读:8 留言:0更新日期:2022-11-03 11:34
本发明专利技术提供一种基于微前端架构的多域名项目的管理平台及高度聚合部署方法,管理平台包括:基于基座应用的第一主应用、第二主应用;其中,基座应用用于提供全局通用功能;第一主应用使用代理服务器配置有至少一个子应用;第二主应用使用代理服务器配置有至少一个子应用;第一主应用的二级域名和第二主应用的二级域名不同,第一主应用的二级域名和第二主应用的二级域名被设置成在基座应用所在代理服务器上指向同一个存储的目录位置。该管理平台可将高内聚的基座应用作为公有资源,使得不同域名的多个主应用和同框架的子应用共享基座应用所提供的所有资源,支持多域名、多项目、跨域环境下使用,极大的降低了开发成本、测试成本和维护成本。和维护成本。和维护成本。

【技术实现步骤摘要】
基于微前端架构的多域名项目的管理平台及高度聚合部署方法


[0001]本专利技术涉及计算机信息
,尤其涉及一种基于微前端架构的多域名项目的管理平台及高度聚合部署方法。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]在开发ToB(面向企业用户)项目时,其前台和中后台项目的数量往往数量很多。尤其是中后台项目的开发,以往的趋势都是搭建一个功能强大且完善的单页应用程序。但是中后台项目生命周期较长,这期间由于参与的人员、团队的增多、变迁,单页应用就会从一个普通应用演变成一个巨石应用。随之而来就导致项目无法维护尾大不掉。这类问题在企业级 Web 应用中尤其常见。
[0004]由于公司项目庞大,不论是后台系统,还是前台业务系统都由几个甚至几十个前端应用构成,例如将后台系统的前端应用将所有代码都放在一个项目,随着业务的不断更新,项目逐渐臃肿,维护成本不断提高,项目打包时间变长,打包占用硬件资源变大,打包成功率变低。
[0005]前台业务系统受业务线及微服务影响,产生了几十个前端应用,后期将会继续增加。目前由于应用数量过多,维护起来变的困难,学习成本不断提高,不便于管理。
[0006]同时前台业务由多个二级域名构成,每个域名中的框架结构一致,这样的结构导致不同域名下相同结构部分的变更,都需要同步变更多个项目文件并将其更新至生产环境。不避要的更新和多次的变更带来多次的测试和不同程度的风险。
>
技术实现思路

[0007]鉴于此,本专利技术实施例提供了一种基于微前端架构的多域名项目的管理平台及高度聚合部署方法,以消除或改善现有技术中存在的一个或更多个缺陷。
[0008]本专利技术的技术方案如下:根据本专利技术的一方面,本专利技术提供了一种基于微前端架构的多域名项目的管理平台,所述管理平台包括:基于基座应用的第一主应用、第二主应用;其中,所述基座应用为所述第一主应用和第二主应用的通用基座,用于给所述第一主应用和第二主应用提供全局通用功能;所述第一主应用使用代理服务器配置有至少一个子应用,所述第一主应用的所有的子应用注册到所述第一主应用中;所述第二主应用使用代理服务器配置有至少一个子应用,所述第二主应用的所有的子应用注册到所述第二主应用中;所述第一主应用的二级域名和所述第二主应用的二级域名不同,所述第一主应用的二级域名和所述第二主应用的二级域名被设置成在所述基座应用所在代理服务器上指向同一个存储的目录位置,所述基座应用作为所述第一主应用及其子应用、所述第二主应用及其子应用的访问入口。
[0009]在一些实施例中,所述管理平台还包括:第三主应用,其使用代理服务器配置了至少一个子应用,所述第三主应用的所有的子应用注册到所述第三主应用中,所述第三主应用的二级域名与所述第一主应用、第二主应用均不同,所述第三主应用的二级域名的根目录也指向所述基座应用。
[0010]在一些实施例中,所述第一主应用和所述第二主应用的顶级域名相同或不同。
[0011]在一些实施例中,所述第一主应用是面向企业用户的业务系统,包含多个子业务应用;所述第二主应用是面向内部人员的用户中心系统,包含多个子业务应用;在所述管理平台包括第三主应用的情况下,所述第三主应用是账户中心系统,包含多个子业务应用。
[0012]在一些实施例中,所述基座应用包括:基本框架模块,用于给所述管理平台提供基本框架和操作页面;全局配置模块,用于统一管理所述管理平台的各应用项目的配置信息;应用注册模块,用于根据预设的注册应用配置信息将子应用注册到对应的主应用中,也用于将主应用注册到所述基座应用中,未注册的子应用、主应用无法通过所述基座应用进行访问;共享axios模块,用于在所述基座应用中封装网络请求axios并将其下发至主应用和/或子应用中,以全局控制网络请求,对接口请求及相应做出统一控制;工具类模块,用于将工具类下发至子应用,以避免各子应用各自加载和单独升级;共享组件模块,用于将多个应用项目常用的组件封装为所述基座应用的通用组件,并能将该所述通用组件向主应用和/或子应用下发;共享Store模块,用于管理各应用项目的共享状态,若主应用之间、主子应用之间和子应用之间存在共享状态,其中任意一个应用项目的数据状态进行变更,则其余的应用项目的对应数据均同步变更。
[0013]在一些实施例中,所述基座应用的基本框架模块提供的操作页面包括有:主应用访问入口单元、当前展示的主应用框架单元、组件展示单元;其中,所述主应用访问入口单元用于进入不同二级域名的各个主应用;所述主应用框架单元用于展示所述基座应用的框架,该框架在展示不同的主应用时,由该主应用与基座应用的通信接口决定;所述组件展示单元用于显示当前主应用的组件,主应用的组件能被其子应用作为通用组件调用。
[0014]在一些实施例中,所述基座应用的各主应用通过设置的状态管理模块与其对应的子应用进行通信,所述状态管理模块将主应用的状态管理对象暴露给对应的子应用,则该子应用与主应用能共同操作该状态管理对象来操作数据,实现主应用和子应用的通信。
[0015]根据本专利技术的另一方面,本专利技术也提供了一种多域名项目的高度聚合部署方法,该方法基于如前述的管理平台,包括如下步骤:S10:将多个不同二级域名的主应用指向到同一代理服务器,代理服务器对多个二级域名做好绑定;S20:将各个不同二级域名的主应用的根目录指向该代理服务器的同一个根目录,以实现基座应用的共享;S30:将基座应用的源代码部署到各主应用在代理服务器所指向的根目录下,以实现不同域名的主应用的高度聚合部署;在完成不同域名的主应用的高度聚合部署后,用户访问任一指定的主应用的二级
域名时,代理服务器都会将资源指向基座应用所存储的目录位置。
[0016]根据本专利技术的又一方面,本专利技术也提供了一种基于多域名项目的高度聚合部署装置,包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时,该装置实现如前述高度聚合部署方法的步骤。
[0017]根据本专利技术的再一方面,本专利技术也提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前述高度聚合部署方法的步骤。
[0018]根据本专利技术实施例的基于微前端架构的多域名项目的管理平台及高度聚合部署方法,可获得的有益效果至少包括:(1)该管理平台可将多种技术栈应用项目(如JSP项目与SPA项目)集成到一个平台中统一管理,解决了公共文件分散、各自维护、未统一管理读取的乱象。
[0019](2)该管理平台和部署方法可将高内聚的基座应用作为公有资源,使得不同域名的多个主应用和同框架的子应用共享基座应用所提供的所有资源,支持多域名、多项目、跨域环境下使用,高度聚合部署的方式极大的降低了开发成本、测试成本和维护成本,同时使得管理平台管理的各个应用项目的扩展能力、移值能力得到极大的提高。
[0020]本专利技术的附加优点、目本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于微前端架构的多域名项目的管理平台,其特征在于,所述管理平台包括:基于基座应用的第一主应用、第二主应用;其中,所述基座应用为所述第一主应用和第二主应用的通用基座,用于给所述第一主应用和第二主应用提供全局通用功能;所述第一主应用使用代理服务器配置有至少一个子应用,所述第一主应用的所有的子应用注册到所述第一主应用中;所述第二主应用使用代理服务器配置有至少一个子应用,所述第二主应用的所有的子应用注册到所述第二主应用中;所述第一主应用的二级域名和所述第二主应用的二级域名不同,所述第一主应用的二级域名和所述第二主应用的二级域名被设置成在所述基座应用所在代理服务器上指向同一个存储的目录位置,所述基座应用作为所述第一主应用及其子应用、所述第二主应用及其子应用的访问入口。2.根据权利要求1所述的基于微前端架构的多域名项目的管理平台,其特征在于,所述管理平台还包括:第三主应用,其使用代理服务器配置了至少一个子应用,所述第三主应用的所有的子应用注册到所述第三主应用中,所述第三主应用的二级域名与所述第一主应用、第二主应用均不同,所述第三主应用的二级域名的根目录也指向所述基座应用。3.根据权利要求1所述的基于微前端架构的多域名项目的管理平台,其特征在于,所述第一主应用和所述第二主应用的顶级域名相同或不同。4.根据权利要求1所述的基于微前端架构的多域名项目的管理平台,其特征在于,所述第一主应用是面向企业用户的业务系统,包含多个子业务应用;所述第二主应用是面向内部人员的用户中心系统,包含多个子业务应用;在所述管理平台包括第三主应用的情况下,所述第三主应用是账户中心系统,包含多个子业务应用。5.根据权利要求1所述的基于微前端架构的多域名项目的管理平台,其特征在于,所述基座应用包括:基本框架模块,用于给所述管理平台提供基本框架和操作页面;全局配置模块,用于统一管理所述管理平台的各应用项目的配置信息;应用注册模块,用于根据预设的注册应用配置信息将子应用注册到对应的主应用中,也用于将主应用注册到所述基座应用中,未注册的子应用、主应用无法通过所述基座应用进行访问;共享axios模块,用于在所述基座应用中封装网络请求axios并将其下发至主应用和/或子应用中,以全局控制网络请求,对接口请求及相应做出统一控制;工具类模块,用于将工具类下发至子应用,以...

【专利技术属性】
技术研发人员:崔帅
申请(专利权)人:中企云链北京金融信息服务有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1