一种微前端系统技术方案

技术编号:29672185 阅读:24 留言:0更新日期:2021-08-13 21:53
本申请适用于前端应用技术领域,公开了一种微前端系统,包括子应用模块、配置中心及基座应用集群,子应用模块将子应用配置文件上传至配置中心;配置中心根据子应用配置文件从基座应用模块集群中确定出目标基座应用模块,并将子应用配置文件中的子应用数据发送至目标基座应用模块,且在接收到目标基座应用模块返回的基座应用数据时,将子应用数据与基座应用数据进行关联注册;目标基座应用模块对子应用数据携带的密钥进行校验,且当在校验成功时存储子应用数据,并将基座应用数据发送至配置中心。本申请中的微前端系统实现了子应用模块的发现与注册,提高了子应用模块注册的自动化程度。

【技术实现步骤摘要】
一种微前端系统
本申请涉及前端应用
,尤其涉及一种微前端系统。
技术介绍
微前端系统是指将一个前端应用分解成一些更小、更简单的能够独立开发、测试、部署的子应用模块,通过基座应用模块对子应用模块的全局控制调度,实现系统行为的整体控制,具有应用自治、单一职责、技术栈无关等优势。微前端系统需要对新发布的子应用模块的子应用配置文件进行查找和注册,以及在子应用配置文件发生变更时,更新订阅了该子应用模块的基座应用模块的注册信息。现有技术中微前端系统的基座应用模块作为主要服务注册管理端,通过预先构建的基座作为主控端来控制整个系统的行为,具体实现方式是先在基座里创建一个文件夹作为应用注册表,初始化微前端系统相关的配置文件,该配置文件用于存放子应用信息,主要包括每个应用的信息及对应的应用入口,起全局注册中心的作用,子应用模块在构建完成或者部署到服务器后,在该应用注册表中注册,才可以接受基座应用模块的调用。现有的微前端系统中,通过固定的配置文件实现子应用模块的注册,每次更新子应用模块都需要修改配置文件,再重新启动基座应用进行数据同步,不方便子应用模块的添加、删除。并且当子应用模块发生变更时,比如新发布了子应用模块的子应用配置文件或已有子应用模块的子应用配置文件更新时,基座应用模块不能自动注册发现子应用模块,需要开发人员通知基座应用模块注册子应用模块,可见现有的微前端子应用模块注册方案存在自动化程度较低的问题。
技术实现思路
基于此,有必要针对上述技术问题,提供一种微前端系统,以解决现有的微前端子应用模块注册方案自动化程度较低的问题。本申请实施例提供了一种微前端系统,包括子应用模块、配置中心和基座应用模块集群。所述子应用模块,用于将子应用配置文件上传至配置中心。所述配置中心,用于根据所述子应用配置文件从所述基座应用模块集群中确定出目标基座应用模块,并将所述子应用配置文件中的子应用数据发送至所述目标基座应用模块,且在接收到所述目标基座应用模块返回的基座应用数据时,将所述子应用数据与所述基座应用数据进行关联注册。所述目标基座应用模块,用于对所述子应用数据携带的密钥进行校验,且当在校验成功时,存储所述子应用数据,并将所述基座应用数据发送至所述配置中心。上述方案中,所述子应用配置文件包括配置中心地址和所述子应用数据。所述配置中心还用于,在监测到所述子应用配置文件发生变化时,向所述子应用模块发送上传通知。所述子应用模块具体用于,在接收到所述上传通知时,根据所述配置中心地址将所述子应用配置文件发送至所述配置中心。上述方案中,所述根据所述子应用配置文件从所述基座应用模块集群中确定出目标基座应用模块,包括:通过配置中心的配置处理模块解析所述子应用配置文件,得到所述子应用数据。基于预设的主题关系映射列表,根据所述子应用数据中携带的主题,从所述基座应用模块集群中确定出目标基座应用模块。上述方案中,所述预设的主题关系映射列表中的信息用于描述所述主题与所述目标基座应用模块之间的一一对应关系。上述方案中,所述将所述子应用配置文件中的子应用数据发送至所述目标基座应用模块,具体包括:通过Websocket将所述子应用数据发送至所述目标基座应用模块。上述方案中,所述在接收所述目标基座应用模块返回的基座应用数据时,将所述子应用数据与所述基座应用数据进行关联注册,包括:基于所述预设的主题关系映射列表,判断所述主题是否在所述配置中心数据库中的订阅关系表中存在。若所述主题在所述订阅关系表存在,则将所述子应用数据的子应用ID存储至所述订阅关系表中。若所述主题在所述订阅关系表不存在,则基于所述预设的主题关系映射列表,将所述子应用数据的子应用ID、所述主题以及所述基座应用数据的基座应用ID关联存储至所述订阅关系表中。上述方案中,所述子应用数据携带有子应用私钥,所述基座应用数据携带有基座应用公钥。所述目标基座应用模块具体用于,校验所述子应用私钥与所述基座应用公钥是否配对。若所述子应用私钥与所述基座应用公钥配对,则接收并存储所述配置中心发送的所述子应用数据,并将所述基座应用数据发送至所述配置中心。上述方案中,所述配置中心还用于,将存储有所述子应用模块和所述目标基座应用模块订阅关系的订阅关系表同步保存到Redis缓存中。上述方案中,所述配置中心还用于搭建Websocket服务,且将所述基座应用模块作为所述Websocket服务的客户端。上述方案中,所述子应用私钥和所述基座应用公钥均是基于非对称加密算法得到,其中,所述子应用私钥与所述基座应用公钥基于所述目标基座应用模块与所述子应用模块之间的订阅关系分别配置到所述子应用模块中与所述目标基座应用模块中。本申请提供的一种微前端系统,包括子应用模块、配置中心及基座应用集群,子应用模块将子应用配置文件上传至配置中心,配置中心在接收到子应用配置文件后进行解析处理,得到子应用数据,并基于该子应用数据从基座应用模块集群中确定出目标基座应用模块,并将子应用数据发送至目标基座应用模块,目标基座模块对子应用数据携带的密钥进行校验,且当在校验成功时,存储子应用数据,并将基座应用数据发送至配置中心,配置中心在接收到目标基座应用模块返回的基座应用数据时,将子应用数据与基座应用数据进行关联注册。本申请提供的微前端系统通过配置中心主导子应用模块、配置中心和基座应用模块进行数据交互,实现了基座应用模块对子应用模块的发现与注册,提高了子应用模块注册的自动化程度。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的一种微前端系统的结构框架示意图;图2是本申请实施例提供的一种微前端系统的具体结构框架示意图;图3是本申请实施例中基于发布-订阅模式的子应用模块和基座应用模块订阅关系示意图。其中,10-子应用模块,20-配置中心,30-基座应用模块集群,31-基座应用模块。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请所有实施例提供的微前端系统应用于电子设备中,电子设备可以是终端类或服务器类,如手机或计算机等。图1示出了微前端系统的结构框架示意图。如图1所示,微前端系统中包括若干子应用模块10,配置中心20,以及若干基座应用模块31组成的基座应用模块集群30。子应用模块10,用于将子应用配置文件上传至配置中心20。配置中心20,用于根据子应用本文档来自技高网...

【技术保护点】
1.一种微前端系统,其特征在于,包括子应用模块、配置中心和基座应用模块集群;/n所述子应用模块,用于将子应用配置文件上传至配置中心;/n所述配置中心,用于根据所述子应用配置文件从所述基座应用模块集群中确定出目标基座应用模块,并将所述子应用配置文件中的子应用数据发送至所述目标基座应用模块,且在接收到所述目标基座应用模块返回的基座应用数据时,将所述子应用数据与所述基座应用数据进行关联注册;/n所述目标基座应用模块,用于对所述子应用数据携带的密钥进行校验,且当在校验成功时,存储所述子应用数据,并将所述基座应用数据发送至所述配置中心。/n

【技术特征摘要】
1.一种微前端系统,其特征在于,包括子应用模块、配置中心和基座应用模块集群;
所述子应用模块,用于将子应用配置文件上传至配置中心;
所述配置中心,用于根据所述子应用配置文件从所述基座应用模块集群中确定出目标基座应用模块,并将所述子应用配置文件中的子应用数据发送至所述目标基座应用模块,且在接收到所述目标基座应用模块返回的基座应用数据时,将所述子应用数据与所述基座应用数据进行关联注册;
所述目标基座应用模块,用于对所述子应用数据携带的密钥进行校验,且当在校验成功时,存储所述子应用数据,并将所述基座应用数据发送至所述配置中心。


2.如权利要求1所述的微前端系统,其特征在于,所述子应用配置文件包括配置中心地址和所述子应用数据;
所述配置中心还用于,在监测到所述子应用配置文件发生变化时,向所述子应用模块发送上传通知;
所述子应用模块具体用于,在接收到所述上传通知时,根据所述配置中心地址将所述子应用配置文件发送至所述配置中心。


3.如权利要求1所述的微前端系统,其特征在于,所述根据所述子应用配置文件从所述基座应用模块集群中确定出目标基座应用模块,包括:
通过配置中心的配置处理模块解析所述子应用配置文件,得到所述子应用数据;
基于预设的主题关系映射列表,根据所述子应用数据中携带的主题,从所述基座应用模块集群中确定出目标基座应用模块。


4.如权利要求3所述的微前端系统,其特征在于,所述预设的主题关系映射列表中的信息用于描述所述主题与所述目标基座应用模块之间的一一对应关系。


5.如权利要求1所述的微前端系统,其特征在于,所述将所述子应用配置文件中的子应用数据发送至所述目标基座应用模块,具体包括:
通过Websocket将所述子应用...

【专利技术属性】
技术研发人员:濮成林
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东;44

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

1