CN112597408A - 一种系统融合方法、装置、设备和存储介质 - Google Patents
一种系统融合方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112597408A CN112597408A CN202011578785.2A CN202011578785A CN112597408A CN 112597408 A CN112597408 A CN 112597408A CN 202011578785 A CN202011578785 A CN 202011578785A CN 112597408 A CN112597408 A CN 112597408A
- Authority
- CN
- China
- Prior art keywords
- component
- fusion
- fusion component
- page
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种系统融合方法、装置、设备和存储介质,通过基于微前端架构创建第一系统的融合组件;对融合组件进行配置,以使得主系统基于配置后的融合组件对第一系统进行调度和管理,其中,主系统所使用的系统架构与第一系统所使用的系统架构不同;在融合组件中构建第一通信机制,第一通信机制使得主系统通过融合组件与第一系统进行通信;在第一通信机制下,主系统与融合组件之间基于事件总线模式进行通信,融合组件基于其原生操作与第一系统进行通信。本发明可以实现在需要融合的子系统中追加对其进行管理和调度的生命周期管理,从而使得主系统与子系统的页面刷新同步进行,且主系统与子系统的数据刷新也同步进行,提高用户体验。
Description
技术领域
本发明涉及前端技术领域,特别是涉及一种系统融合方法、装置、设备和存储介质。
背景技术
目前进行前端页面系统融合的方法是将子系统以页面的形式通过浏览器的iframe标签作为载体,直接嵌入到主系统的页面系统中,达成系统融合的目标。
在该方案中,虽然页面上融合到了一起。但由于iframe标签的隔离特性,子系统实际上与主系统是相互完全独立的进程。子系统的页面无法接受调度,也无法接受管理。容易出现页面刷新、数据刷新不同步的问题,影响用户体验。
发明内容
本发明实施例的目的在于提供一种系统融合方法、装置、设备和存储介质,以实现在需要融合的子系统中追加对其进行管理和调度的生命周期管理,从而使得主系统与子系统的页面刷新同步进行,且主系统与子系统的数据刷新也同步进行,提高用户体验。具体技术方案如下:
第一方面,一种系统融合方法,包括:
基于微前端架构创建第一系统的融合组件;
对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,其中,所述主系统所使用的系统架构与所述第一系统所使用的系统架构不同;
在所述融合组件中构建第一通信机制,所述第一通信机制使得所述主系统通过所述融合组件与所述第一系统进行通信;在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,所述融合组件基于其原生操作与所述第一系统进行通信。
结合第一方面,在某些可选的实施方式中,所述对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,包括如下五种处理中的至少任意一个:
处理一、将所述融合组件中的原生URL地址修改为所述第一系统的URL地址,以实现对所述第一系统的引导管理;
处理二、将所述融合组件中的原生节点与所述主系统提供的页面节点连接,以实现对所述第一系统的挂载管理;
处理三、根据所述第一系统产生的页面操作数据,切换所述主系统的页面为所述第一系统的页面,以实现页面切换;
处理四、根据所述主系统产生的、对所述第一系统的页面进行更新的页面操作数据,将所述融合组件中的所述原生URL地址修改为更新后的所述第一系统的URL地址;
处理五、删除所述融合组件,以实现对所述第一系统的卸载管理。
结合第一方面,在某些可选的实施方式中,所述融合组件基于其原生操作与所述第一系统进行通信,包括:
所述融合组件基于对所述融合组件的原生URL地址进行修改的原生操作,与所述第一系统进行通信;
或,所述融合组件基于所述融合组件的原生Message接口与所述第一系统内部保持通信。
结合第一方面,在某些可选的实施方式中,所述在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,包括:
在所述第一通信机制下,所述主系统作为发布方,在全局暴露一条事件总线,并在所述事件总线的通道上分发消息;
所述融合组件基于所述事件总线监听所述主系统分发的消息,以实现所述主系统与所述融合组件之间进行通信。
第二方面,一种系统融合装置,包括:组件创建单元、组件配置单元和通信构建单元;
所述组件创建单元,被配置为执行基于微前端架构创建第一系统的融合组件;
所述组件配置单元,被配置为执行对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,其中,所述主系统所使用的系统架构与所述第一系统所使用的系统架构不同;
所述通信构建单元,被配置为执行在所述融合组件中构建第一通信机制,所述第一通信机制使得所述主系统通过所述融合组件与所述第一系统进行通信;在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,所述融合组件基于其原生操作与所述第一系统进行通信。
结合第二方面,在某些可选的实施方式中,所述组件配置单元具体被配置为执行包括如下五种处理中的至少任意一个:
处理一、将所述融合组件中的原生URL地址修改为所述第一系统的URL地址,以实现对所述第一系统的引导管理;
处理二、将所述融合组件中的原生节点与所述主系统提供的页面节点连接,以实现对所述第一系统的挂载管理;
处理三、根据所述第一系统产生的页面操作数据,切换所述主系统的页面为所述第一系统的页面,以实现页面切换;
处理四、根据所述主系统产生的、对所述第一系统的页面进行更新的页面操作数据,将所述融合组件中的所述原生URL地址修改为更新后的所述第一系统的URL地址;
处理五、删除所述融合组件,以实现对所述第一系统的卸载管理。
结合第二方面,在某些可选的实施方式中,所述融合组件执行基于其原生操作与所述第一系统进行通信,具体被配置为:
所述融合组件基于对所述融合组件的原生URL地址进行修改的原生操作,与所述第一系统进行通信;
或,所述融合组件基于所述融合组件的原生Message接口与所述第一系统内部保持通信。
结合第二方面,在某些可选的实施方式中,所述在所述第一通信机制下,所述主系统与所述融合组件之间执行基于事件总线模式进行通信,具体被配置为:
在所述第一通信机制下,所述主系统作为发布方,在全局暴露一条事件总线,并在所述事件总线的通道上分发消息;
所述融合组件基于所述事件总线监听所述主系统分发的消息,以实现所述主系统与所述融合组件之间进行通信。
第三方面,一种存储介质,所述存储介质用于存储程序,所述程序被处理器执行时实现上述任一项所述的系统融合方法。
第四方面,一种系统融合设备,所述系统融合设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序,所述程序至少用于实现上述任一项所述的系统融合方法。
本发明实施例提供的一种系统融合方法、装置、设备和存储介质,可以实现在需要融合的子系统中追加对其进行管理和调度的生命周期管理,从而使得主系统与子系统的页面刷新同步进行,且主系统与子系统的数据刷新也同步进行,提高用户体验。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种系统融合方法的流程图;
图2为本发明提供的一种系统融合装置的结构示意图;
图3为本发明提供的一种系统融合设备的结构示意图。
具体实施方式
在基座模式微前端架构下,系统被拆分为一个主系统和若干个子系统,主系统的职责是管理其它应用。子系统依据自治、单一性的原则,相互之间是隔离开的。实质上可以理解为独立的应用,并具备完整的页面。
经本发明人研究发现,在微前端架构下,子系统通常具有多个生命周期,包括下载、初始化、被挂载、卸载和移除等等。微前端架构下的子系统或其它架构下的老系统往往并不适合在微前端架构直接集成。因为目前进行前端页面系统融合的方法是将子系统以页面的形式通过浏览器的iframe标签作为载体,直接嵌入到主系统的页面系统中,达成系统融合的目标。在现有方案中,虽然页面上融合到了一起。但由于iframe标签的隔离特性,子系统实际上与主系统是相互完全独立的进程。子系统的页面无法接受调度,也无法接受管理。容易出现页面刷新、数据刷新不同步的问题,影响用户体验。
为此,本发明人提出了一种基于iframe技术理念,解决微前端架构下异构系统或者老系统接入的方案。通过对iframe标签进行扩展形成具有iframe标签功能的融合组件,使得通过该组件接入的子系统具有与其他标准微前端子系统一致的生命周期,可以被主系统无差别的调度和管理,使得主系统与子系统的页面刷新同步进行,且主系统与子系统的数据刷新也同步进行,提高用户体验。子系统通过融合组件提供的消息通信机制响应主系统的路由变化。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明提供了一种系统融合方法,包括:
S100、基于微前端架构创建第一系统的融合组件;
可选的,本发明所说的融合组件可以是基于iframe标签进行扩展构建成的组件,即融合组件继承了iframe标签的功能,本文所说的融合组件也可以理解为iframe组件,本发明对此不做限制。
即本文所说的融合组件可以包含一个类似于iFrame标签的页面容器,提供第一系统一个相对独立的运行环境,并在融合过程中不作任何修改,本发明对此不做限制。
可选的,本文所说的第一系统的系统架构可以与本文所说的主系统的系统架构相同,也可以不同,本发明对此不做限制。
可选的,步骤S100中创建的融合组件是第一系统的融合组件,用于将第一系统融合进主系统。如图2所示,第一系统作为融合组件的内部系统,通过融合组件与主系统融合,本发明对此不做限制。
可选的,iframe标签是HTML标签。定义为文档中的文档,或者浮动的框架(FRAME)。在web系统中一般用于在网页内显示网页。iframe标签的创建比其它包括scripts和css的dom元素的创建慢了1至2个数量级。同时,iframe标签内部的网页是处在与主系统页面完全不同的另一个进程中。在隔离性完美的同时,又引入了很多无法解决的问题,严重影响了用户的体验,例如:
1.URL不同步。浏览器刷新iframe标签的URL出现状态丢失、后退前进按钮无法使用。
2.用户界面响应不同步。dom元素的结构不共享,例如,屏幕右下角1/4的iframe标签里来一个带遮罩层的弹框,同时要求这个弹框要浏览器居中显示,还要浏览器在执行resize时自动居中,比较苛刻。
3.全局上下文完全隔离,内存变量不共享。iframe标签内外系统的通信、数据同步等需求,主系统的cookie要到根域名都不同的子系统中实现免登效果。
4.同步慢。每次子系统进入主系统页面都是一次浏览器上下文重建、资源重新加载的过程,过于繁琐。
S200、对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,其中,所述主系统所使用的系统架构与所述第一系统所使用的系统架构不同;
可选的,创建融合组件后,需要对融合组件进行配置,例如在融合组件中配置主系统对第一系统的各种生命周期管理的方法,以及配置主系统与第一系统之间的通信。
可选的,在融合组件中配置主系统对第一系统的各种生命周期管理的方法,也可以理解为配置主系统对融合组件的生命周期管理的方法,因为融合组件在创建成功后,可以理解为融合组件与第一系统是一个整体。具体可以包括如下理解:
1.融合组件在创建成功之前,融合组件的挂载元素$el和数据对象date均没有定义,即该融合组件还没有进行初始化;
2.在融合组件在创建成功之后,融合组件的date被初始化,但$el还没有初始化,所以接下来需要对$el进行初始化;
3.对融合组件的$el进行初始化之后,$el被初始化了,但还是挂载之前的虚拟dom节点,data.message还未替换,即还未挂载该融合组件;
4.对融合组件进行挂载,使得data.message成功渲染;
5.当融合组件的数据发生变化时,会触发更新函数,从而实现对内部系统的数据更新;
6.若需要卸载该组件,则可以执行卸载函数,之后对数据的改变不会再触发周期函数,说明此时已经解除了事件监听以及和dom的绑定,但是dom结构依然存在。
例如,在single-spa标准中的下载、初始化、被挂载、卸载和被移除是生命周期各个环节的回调函数。就是在第一系统经历引导—挂载—更新—卸载这几步过程中触发的,两者存在关联。即融合组件需要实现这个能力,只有融合组件能够正确的响应生命周期的变化,才有可能被主系统应用加载和管理。
例如,结合图1所示的实施方式,在某些可选的实施方式中,所述步骤S200中的对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,包括如下五种处理中的至少任意一个:
处理一、将所述融合组件中的原生URL地址修改为所述第一系统的URL地址,以实现对所述第一系统的引导管理;
处理二、将所述融合组件中的原生节点与所述主系统提供的页面节点连接,以实现对所述第一系统的挂载管理;
处理三、根据所述第一系统产生的页面操作数据,切换所述主系统的页面为所述第一系统的页面,以实现页面切换;
处理四、根据所述主系统产生的、对所述第一系统的页面进行更新的页面操作数据,将所述融合组件中的所述原生URL地址修改为更新后的所述第一系统的URL地址;
处理五、删除所述融合组件,以实现对所述第一系统的卸载管理。
可选的,对于任何一个页面系统而言,其可以经过的生命周期包括:初始化、挂载、更新和卸载这四个阶段。所以,对于本发明而言,需要在所述融合组件中添加实现上述四个生命周期的方法,其中处理一可以理解为初始化、处理二可以理解为挂载、处理三和处理四可以共同理解为更新、处理五可以理解为卸载,本发明对此不做限制。
可选的,针对处理一,第一系统的融合组件可以引导第一系统的页面融入到主系统中,作为主系统的一个模块,但从页面效果上又没有明显的系统边界,显得第一系统是主系统的一部分。前提是融合组件中的原生URL地址需指向第一系统的URL,若第一系统的某些部分发生变化,其URL也会变化,相应地,融合组件中的原生URL地址也需要变化,这样才能保持融合组件与第一系统的统一性。
可选的,针对处理二,融合组件中的原生URL地址虽然指向第一系统的URL,但还并未实现第一系统的页面真正意义上“嵌入”到主系统的页面中,所以在处理二中需要将所述融合组件中的原生节点与所述主系统提供的页面节点连接,如此实现将第一系统的页面插入到主系统的页面中。
可选的,针对处理三,用户可以点击了融合组件显示的第一系统的页面,因为需要打开一个全屏幕的页面,往往需要主系统来完成这个整体的页面切换过程。这时候就需要融合组件把内部的信息传递到主系统来,让主系统来完成一个页面的切换。
可选的,对于处理四,用户可以触发主系统的一些操作,比如菜单或者页签,并且正好是需要影响到融合组件显示的第一系统的页面。那么就需要通信机制,去告诉融合组件,修改它的URL,使其内部的第一系统的页面发生变化。
可选的,对于处理五,考虑到系统更新换代,有时候需要将主系统中的一些子系统页面整体删除,则需要相应的融合组件支持卸载,本发明对此不做限制。
S300、在所述融合组件中构建第一通信机制,所述第一通信机制使得所述主系统通过所述融合组件与所述第一系统进行通信;在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,所述融合组件基于其原生操作与所述第一系统进行通信。
可选的,为了保证第一系统与主系统的数据同步性和页面同步性,第一系统与主系统之间需要建立通信,所以可以以融合组件为中间件,构建主系统与第一系统之间的第一通信机制。
可选的,本发明的融合组件可以是基于iframe标签扩展生成的融合组件,而iframe标签是前端技术常用的标签,所以可以基于融合组件的一些原生操作获得第一系统的数据或向第一系统传输数据。
例如,结合图1所示的实施方式,在某些可选的实施方式中,所述步骤S300中的融合组件基于其原生操作与所述第一系统进行通信,包括:
所述融合组件基于对所述融合组件的原生URL地址进行修改的原生操作,与所述第一系统进行通信;
或,所述融合组件基于所述融合组件的原生Message接口与所述第一系统内部保持通信。
可选的,融合组件与第一系统之间具有指向的关系,在对融合组件完成引导之后,可以在第一系统的页面发生变化后,通过修改融合组件中的原生URL地址为变化后的第一系统的页面的URL地址,以更新融合组件中的第一系统的页面。即实现了融合组件与第一系统之间的通信。
可选的,融合组件与第一系统之间还可以通过融合组件自带的原生Message接口向第一系统传输数据或接收第一系统发送的数据,本发明对此不做限制。即基于对iframe标签的原生操作实现的,可以修改iframe标签的URL属性值或者利用原生的Message接口与内部系统保持通信,即与第一系统保持通信。
可选的,对于本方案所指的第一系统而言,往往不是由单一的一个页面组成的,第一系统内部本身可能就存在非常复杂的页面跳转情况。
在微前端架构下,融合组件内部的系统页面仍然具备被点击和操作的可能。此时,主系统需要按照业务需求响应或者切换页面,因此就需要融合组件在挂载第一系统之后能够实时响应主系统的路由变化,动态修改融合组件的URL地址。
例如,结合图1所示的实施方式,在某些可选的实施方式中,所述步骤S300中的在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,包括:
在所述第一通信机制下,所述主系统作为发布方,在全局暴露一条事件总线,并在所述事件总线的通道上分发消息;
所述融合组件基于所述事件总线监听所述主系统分发的消息,以实现所述主系统与所述融合组件之间进行通信。
可选的,事件总线模式是现有的通信模式,可以用于在不同系统之间构建通信,本发明对此不再进行赘述,具体请参见本领域对于事件总线模式的说明。
可选的,主系统-融合组件之间的通信机制,可以基于事件总线实现。即主系统在启动之后会在全局暴露一条事件总线,融合组件可以基于这条事件总线部署事件监听,或者触发事件响应。
可选的,利用iframe标签的隔离特性在主系统中加载第一系统,可以有效地减少代码侵入。但是在微前端架构下老系统又不可避免地要与主系统发生交互,比如路由同步,浏览器前进与后退,用户信息共享和系统登出等等。基于本方案实现的融合组件对于主系统与第一系统之间的数据交互和用户界面同步等行为做了统一处理,同时又能够保证第一系统可以和其他子系统一样被主系统调度和管理。
如图2所示,本发明提供了一种系统融合装置,包括:组件构建单元100、组件配置单元200和通信构建单元300;
所述组件构建单元100,被配置为执行基于微前端架构创建第一系统的融合组件;
所述组件配置单元200,被配置为执行对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,其中,所述主系统所使用的系统架构与所述第一系统所使用的系统架构不同;
所述通信构建单元300,被配置为执行在所述融合组件中构建第一通信机制,所述第一通信机制使得所述主系统通过所述融合组件与所述第一系统进行通信;在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,所述融合组件基于其原生操作与所述第一系统进行通信。
结合图2所示的实施方式,在某些可选的实施方式中,所述组件配置单元200,具体被配置为执行包括如下五种处理中的至少任意一个:
处理一、将所述融合组件中的原生URL地址修改为所述第一系统的URL地址,以实现对所述第一系统的引导管理;
处理二、将所述融合组件中的原生节点与所述主系统提供的页面节点连接,以实现对所述第一系统的挂载管理;
处理三、根据所述第一系统产生的页面操作数据,切换所述主系统的页面为所述第一系统的页面,以实现页面切换;
处理四、根据所述主系统产生的、对所述第一系统的页面进行更新的页面操作数据,将所述融合组件中的所述原生URL地址修改为更新后的所述第一系统的URL地址;
处理五、删除所述融合组件,以实现对所述第一系统的卸载管理。
结合图2所示的实施方式,在某些可选的实施方式中,所述融合组件执行基于其原生操作与所述第一系统进行通信,具体被配置为:
所述融合组件基于对所述融合组件的原生URL地址进行修改的原生操作,与所述第一系统进行通信;
或,所述融合组件基于所述融合组件的原生Message接口与所述第一系统内部保持通信。
结合图2所示的实施方式,在某些可选的实施方式中,所述在所述第一通信机制下,所述主系统与所述融合组件之间执行基于事件总线模式进行通信,具体被配置为:
在所述第一通信机制下,所述主系统作为发布方,在全局暴露一条事件总线,并在所述事件总线的通道上分发消息;
所述融合组件基于所述事件总线监听所述主系统分发的消息,以实现所述主系统与所述融合组件之间进行通信。
所述系统融合装置包括处理器和存储器,上述组件创建单元100、组件配置单元200和通信构建单元300等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现在需要融合的子系统中追加对其进行管理和调度的生命周期管理,从而使得主系统与子系统的页面刷新同步进行,且主系统与子系统的数据刷新也同步进行,提高用户体验。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述系统融合方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述系统融合方法。
如图3所示,本发明实施例提供了一种系统融合设备70,系统融合设备70包括至少一个处理器701、以及与处理器701连接的至少一个存储器702、总线703;其中,处理器701、存储器702通过总线703完成相互间的通信;处理器701用于调用存储器702中的程序指令,以执行上述的系统融合方法。本文中的系统融合设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有上述的系统融合方法包括的步骤的程序。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
在一个典型的配置中,设备包括一个或多个处理器(CPU)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种系统融合方法,其特征在于,包括:
基于微前端架构创建第一系统的融合组件;
对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,其中,所述主系统所使用的系统架构与所述第一系统所使用的系统架构不同;
在所述融合组件中构建第一通信机制,所述第一通信机制使得所述主系统通过所述融合组件与所述第一系统进行通信;在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,所述融合组件基于其原生操作与所述第一系统进行通信。
2.根据权利要求1所述的系统融合方法,其特征在于,所述对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,包括如下五种处理中的至少任意一个:
处理一、将所述融合组件中的原生URL地址修改为所述第一系统的URL地址,以实现对所述第一系统的引导管理;
处理二、将所述融合组件中的原生节点与所述主系统提供的页面节点连接,以实现对所述第一系统的挂载管理;
处理三、根据所述第一系统产生的页面操作数据,切换所述主系统的页面为所述第一系统的页面,以实现页面切换;
处理四、根据所述主系统产生的、对所述第一系统的页面进行更新的页面操作数据,将所述融合组件中的所述原生URL地址修改为更新后的所述第一系统的URL地址;
处理五、删除所述融合组件,以实现对所述第一系统的卸载管理。
3.根据权利要求1所述的系统融合方法,其特征在于,所述融合组件基于其原生操作与所述第一系统进行通信,包括:
所述融合组件基于对所述融合组件的原生URL地址进行修改的原生操作,与所述第一系统进行通信;
或,所述融合组件基于所述融合组件的原生Message接口与所述第一系统内部保持通信。
4.根据权利要求1所述的系统融合方法,其特征在于,所述在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,包括:
在所述第一通信机制下,所述主系统作为发布方,在全局暴露一条事件总线,并在所述事件总线的通道上分发消息;
所述融合组件基于所述事件总线监听所述主系统分发的消息,以实现所述主系统与所述融合组件之间进行通信。
5.一种系统融合装置,其特征在于,包括:组件创建单元、组件配置单元和通信构建单元;
所述组件创建单元,被配置为执行基于微前端架构创建第一系统的融合组件;
所述组件配置单元,被配置为执行对所述融合组件进行配置,以使得主系统基于配置后的所述融合组件对所述第一系统进行调度和管理,其中,所述主系统所使用的系统架构与所述第一系统所使用的系统架构不同;
所述通信构建单元,被配置为执行在所述融合组件中构建第一通信机制,所述第一通信机制使得所述主系统通过所述融合组件与所述第一系统进行通信;在所述第一通信机制下,所述主系统与所述融合组件之间基于事件总线模式进行通信,所述融合组件基于其原生操作与所述第一系统进行通信。
6.根据权利要求5所述的系统融合装置,其特征在于,所述组件配置单元具体被配置为执行包括如下五种处理中的至少任意一个:
处理一、将所述融合组件中的原生URL地址修改为所述第一系统的URL地址,以实现对所述第一系统的引导管理;
处理二、将所述融合组件中的原生节点与所述主系统提供的页面节点连接,以实现对所述第一系统的挂载管理;
处理三、根据所述第一系统产生的页面操作数据,切换所述主系统的页面为所述第一系统的页面,以实现页面切换;
处理四、根据所述主系统产生的、对所述第一系统的页面进行更新的页面操作数据,将所述融合组件中的所述原生URL地址修改为更新后的所述第一系统的URL地址;
处理五、删除所述融合组件,以实现对所述第一系统的卸载管理。
7.根据权利要求5所述的系统融合装置,其特征在于,所述融合组件执行基于其原生操作与所述第一系统进行通信,具体被配置为:
所述融合组件基于对所述融合组件的原生URL地址进行修改的原生操作,与所述第一系统进行通信;
或,所述融合组件基于所述融合组件的原生Message接口与所述第一系统内部保持通信。
8.根据权利要求5所述的系统融合装置,其特征在于,所述在所述第一通信机制下,所述主系统与所述融合组件之间执行基于事件总线模式进行通信,具体被配置为:
在所述第一通信机制下,所述主系统作为发布方,在全局暴露一条事件总线,并在所述事件总线的通道上分发消息;
所述融合组件基于所述事件总线监听所述主系统分发的消息,以实现所述主系统与所述融合组件之间进行通信。
9.一种存储介质,其特征在于,所述存储介质用于存储程序,所述程序被处理器执行时实现权利要求1至4中任一项所述的系统融合方法。
10.一种系统融合设备,其特征在于,所述系统融合设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序,所述程序至少用于实现权利要求1至4中任一项所述的系统融合方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011578785.2A CN112597408B (zh) | 2020-12-28 | 2020-12-28 | 一种系统融合方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011578785.2A CN112597408B (zh) | 2020-12-28 | 2020-12-28 | 一种系统融合方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112597408A true CN112597408A (zh) | 2021-04-02 |
CN112597408B CN112597408B (zh) | 2023-08-04 |
Family
ID=75202973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011578785.2A Active CN112597408B (zh) | 2020-12-28 | 2020-12-28 | 一种系统融合方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112597408B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220273A (zh) * | 2021-05-20 | 2021-08-06 | 南方电网数字电网研究院有限公司 | 微前端应用资源处理方法、装置、设备和介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010049717A1 (en) * | 2000-05-08 | 2001-12-06 | Freeman Thomas D. | Method and apparatus for communicating among a network of servers |
CN102137166A (zh) * | 2011-04-26 | 2011-07-27 | 苏州阔地网络科技有限公司 | 基于网页的网页同步浏览方法及系统 |
CN103279541A (zh) * | 2013-06-04 | 2013-09-04 | 天津市天安怡和信息技术有限公司 | 一种降低网页浏览器加载负载的方法及其装置 |
CN103618707A (zh) * | 2013-11-21 | 2014-03-05 | 福州市勘测院 | 用于数字化城市管理系统的web前端快速调用系统 |
US20140068415A1 (en) * | 2012-09-05 | 2014-03-06 | Hbr Labs Llc | Platform and method for real-time synchronized co-browsing of web pages |
US9037963B1 (en) * | 2011-04-22 | 2015-05-19 | Amazon Technologies, Inc. | Secure cross-domain web browser communications |
US9560110B1 (en) * | 2013-08-27 | 2017-01-31 | Google Inc. | Synchronizing shared content served to a third-party service |
CN107291523A (zh) * | 2017-08-01 | 2017-10-24 | 北京亚鸿世纪科技发展有限公司 | 一种Web前端消息总线系统 |
CN108073627A (zh) * | 2016-11-16 | 2018-05-25 | 深圳联友科技有限公司 | 一种跨域网页的JavaScript函数调用方法以及装置 |
CN111078204A (zh) * | 2019-12-25 | 2020-04-28 | 江苏共融科技有限公司 | 基于微前端架构的业务中台前端系统 |
US10817145B1 (en) * | 2018-11-06 | 2020-10-27 | Centergy Consulting, LLC | System and method for seamlessly integrating an iframe into a webpage |
CN112114784A (zh) * | 2020-09-21 | 2020-12-22 | 广东电网有限责任公司电力科学研究院 | 一种基于Single-Spa的前端微服务化系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542538A (zh) * | 2018-11-22 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种子系统管理方法和系统 |
CN111385336A (zh) * | 2018-12-29 | 2020-07-07 | 广州市百果园信息技术有限公司 | 页面通信方法、装置、计算机设备及存储介质 |
-
2020
- 2020-12-28 CN CN202011578785.2A patent/CN112597408B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010049717A1 (en) * | 2000-05-08 | 2001-12-06 | Freeman Thomas D. | Method and apparatus for communicating among a network of servers |
US9037963B1 (en) * | 2011-04-22 | 2015-05-19 | Amazon Technologies, Inc. | Secure cross-domain web browser communications |
CN102137166A (zh) * | 2011-04-26 | 2011-07-27 | 苏州阔地网络科技有限公司 | 基于网页的网页同步浏览方法及系统 |
US20140068415A1 (en) * | 2012-09-05 | 2014-03-06 | Hbr Labs Llc | Platform and method for real-time synchronized co-browsing of web pages |
CN103279541A (zh) * | 2013-06-04 | 2013-09-04 | 天津市天安怡和信息技术有限公司 | 一种降低网页浏览器加载负载的方法及其装置 |
US9560110B1 (en) * | 2013-08-27 | 2017-01-31 | Google Inc. | Synchronizing shared content served to a third-party service |
CN103618707A (zh) * | 2013-11-21 | 2014-03-05 | 福州市勘测院 | 用于数字化城市管理系统的web前端快速调用系统 |
CN108073627A (zh) * | 2016-11-16 | 2018-05-25 | 深圳联友科技有限公司 | 一种跨域网页的JavaScript函数调用方法以及装置 |
CN107291523A (zh) * | 2017-08-01 | 2017-10-24 | 北京亚鸿世纪科技发展有限公司 | 一种Web前端消息总线系统 |
US10817145B1 (en) * | 2018-11-06 | 2020-10-27 | Centergy Consulting, LLC | System and method for seamlessly integrating an iframe into a webpage |
CN111078204A (zh) * | 2019-12-25 | 2020-04-28 | 江苏共融科技有限公司 | 基于微前端架构的业务中台前端系统 |
CN112114784A (zh) * | 2020-09-21 | 2020-12-22 | 广东电网有限责任公司电力科学研究院 | 一种基于Single-Spa的前端微服务化系统 |
Non-Patent Citations (4)
Title |
---|
NIUYUEYANG: "iframe微前端架构", 《CSDN: HTTPS://BLOG.CSDN.NET/QQ_33332184/ARTICLE/DETAILS/105474228》 * |
NIUYUEYANG: "iframe微前端架构", 《CSDN: HTTPS://BLOG.CSDN.NET/QQ_33332184/ARTICLE/DETAILS/105474228》, 12 April 2020 (2020-04-12), pages 3 - 8 * |
小LING的博客: "iframe全屏兼容(按钮在iframe里)", 《博客园: HTTPS://WWW.CNBLOGS.COM/FENG-XL/P/9132328.HTML》 * |
小LING的博客: "iframe全屏兼容(按钮在iframe里)", 《博客园: HTTPS://WWW.CNBLOGS.COM/FENG-XL/P/9132328.HTML》, 4 June 2018 (2018-06-04), pages 2 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220273A (zh) * | 2021-05-20 | 2021-08-06 | 南方电网数字电网研究院有限公司 | 微前端应用资源处理方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112597408B (zh) | 2023-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951233B (zh) | 混合模式智能手机应用开发框架系统 | |
CN107515776B (zh) | 业务不间断升级方法、待升级节点和可读存储介质 | |
US20190220304A1 (en) | Method and device for processing application program page, and storage medium | |
CN107092473B (zh) | 桌面应用开发方法及设备 | |
US11706331B2 (en) | Information processing method and apparatus, storage medium, and electronic device | |
US20220156133A1 (en) | Cross-Process Communication Method, Apparatus, and Device | |
US9235398B2 (en) | Development of platform independent applications | |
CN106445518A (zh) | 一种跨平台移动终端应用程序开发方法及系统 | |
CN111796823A (zh) | 页面更新、页面展示的方法、装置及页面维护系统 | |
US11262883B2 (en) | Associating browser with application | |
CN113010827B (zh) | 页面渲染方法、装置、电子设备以及存储介质 | |
US20160011864A1 (en) | Development of Platform Independent Applications | |
CN110806868A (zh) | 一种单页面搭建及加载方法 | |
CN113760324A (zh) | 构建微前端应用的方法和装置 | |
US20130151595A1 (en) | Deployment and hosting of platform independent applications | |
CN112597408B (zh) | 一种系统融合方法、装置、设备和存储介质 | |
CN113448650A (zh) | 直播功能插件加载方法、装置、设备及存储介质 | |
CN113296758A (zh) | 一种前端组件库构建方法、装置及存储介质 | |
CN110618811B (zh) | 信息呈现方法和装置 | |
CN112235132A (zh) | 动态配置服务的方法、装置、介质以及服务器 | |
CN110599112A (zh) | 一种网络页面开发、维护方法和装置 | |
CN115146198A (zh) | 一种基于Electron的简易浏览器实现方法及系统 | |
CN114880073A (zh) | 一种对用户屏蔽Web框架的云应用引擎部署方法、装置、设备和存储介质 | |
CN113591000A (zh) | 一种浏览器引擎的切换方法和装置及设备 | |
CN110888649B (zh) | 应用部署方法、应用基线的创建方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |