CN114764354B - 基于paas的依赖管理方法、装置、电子设备及介质 - Google Patents

基于paas的依赖管理方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN114764354B
CN114764354B CN202210410330.2A CN202210410330A CN114764354B CN 114764354 B CN114764354 B CN 114764354B CN 202210410330 A CN202210410330 A CN 202210410330A CN 114764354 B CN114764354 B CN 114764354B
Authority
CN
China
Prior art keywords
target
application
sub
resource
dependent
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.)
Active
Application number
CN202210410330.2A
Other languages
English (en)
Other versions
CN114764354A (zh
Inventor
胡越
盛国军
熊普江
王伟阳
王洪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kaos Digital Technology Qingdao Co ltd
Karos Iot Technology Co ltd
Haier Digital Technology Qingdao Co Ltd
Cosmoplat Industrial Intelligent Research Institute Qingdao Co Ltd
Haier Cosmo IoT Technology Co Ltd
Original Assignee
Haier Digital Technology Qingdao Co Ltd
Haier Caos IoT Ecological Technology Co Ltd
Cosmoplat Industrial Intelligent Research Institute Qingdao Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Haier Digital Technology Qingdao Co Ltd, Haier Caos IoT Ecological Technology Co Ltd, Cosmoplat Industrial Intelligent Research Institute Qingdao Co Ltd filed Critical Haier Digital Technology Qingdao Co Ltd
Priority to CN202210410330.2A priority Critical patent/CN114764354B/zh
Publication of CN114764354A publication Critical patent/CN114764354A/zh
Application granted granted Critical
Publication of CN114764354B publication Critical patent/CN114764354B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供一种基于PAAS的依赖管理方法、装置、电子设备及介质。该方法包括:当调用目标子应用时,加载父应用信息;其中,父应用信息包括多个子应用的依赖资源的路径;基于目标子应用的依赖配置表,确定目标子应用是否可共享父应用信息中的依赖资源的路径;其中,依赖配置表存储有目标子应用可使用的依赖资源的路径;若是,则确定可共享的目标依赖资源的路径,基于目标依赖资源的路径对目标依赖资源进行加载;在目标依赖资源加载完成后,基于目标依赖资源进行挂载处理,并生成子应用实例显示在页面。本申请的方法,节省了切换子应用时子应用资源加载负担,提高了资源展示效率,从而有利于提升用户体验。

Description

基于PAAS的依赖管理方法、装置、电子设备及介质
技术领域
本申请涉及计算机网络技术,尤其涉及一种基于PAAS的依赖管理方法、装置、电子设备及介质。
背景技术
随着业务需求的不断增长,前端工程的代码逐渐膨胀,使得前端应用逐渐发展为“巨石应用”,在应用维护和应用升级等方向都存在很大挑战。
为迎接上述挑战,微前端的概念被提出。微前端是一种类似于微服务的架构,将微服务的理念应用于浏览器端,即将web应用由单一的单体应用转变为多个小型前端应用聚合为一的应用,各个前端应用可以独立运行、独立开发、独立部署。
对于上述方式,多个子应用在加载资源时都是对资源进行全量加载,同时因现代前端的技术演进,待加载的资源往往比较庞大,从而导致用户在切换子应用时资源展示效率低下,进而不利于提升用户体验。
发明内容
本申请提供一种基于PAAS的依赖管理方法、装置、电子设备及介质,用以降低前端页面负担,从而提高前端资源展示的效率,进而提升用户体验。
一方面,本申请提供一种基于PAAS的依赖管理方法,该方法包括:
当调用目标子应用时,加载父应用信息;其中,所述父应用信息包括多个子应用的依赖资源的路径;
基于所述目标子应用的依赖配置表,确定所述目标子应用是否可共享所述父应用信息中的依赖资源的路径;其中,所述依赖配置表存储有所述目标子应用可使用的依赖资源的路径;
若是,则确定可共享的目标依赖资源的路径,基于所述目标依赖资源的路径从缓存空间中加载所述目标依赖资源,其中,所述目标依赖资源是基于所述目标依赖资源路径预先存储至所述缓存空间的资源,所述缓存空间用于缓存历史加载的依赖资源。
在所述目标依赖资源加载完成后,基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面。
在另一种可能实现的方式中,若存在多个所述目标依赖资源,则所述基于所述目标依赖资源的路径从缓存空间中加载所述目标依赖资源,包括:
将多个所述目标依赖资源添加至异步队列,并依据预设规则对所述异步队列中的所述目标依赖资源进行拉取;
在所述目标依赖资源拉取完成后,基于最小***加载工具对所述目标依赖资源进行加载。
在另一种可能实现的方式中,所述调用目标子应用之前,所述方法还包括:
获取用户在导航页面触发的子应用信息,所述子应用信息为所述用户输入的网页地址或者为所述用户选择的子应用标识;
基于所述子应用信息,确定待调用的所述目标子应用。
在另一种可能实现的方式中,所述方法还包括:
若所述目标依赖资源未存在于所述缓存空间,则依据所述目标依赖资源的路径对所述目标依赖资源进行加载。
在另一种可能实现的方式中,所述基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面之前,所述方法还包括:
获取所述目标子应用的路径配置信息,所述路径配置信息包括所述目标子应用的待加载资源的路径;
根据所述待加载资源的路径,确定除所述目标依赖资源之外的独立资源的路径;
基于所述独立资源的路径对所述目标子应用的独立资源进行加载;
在另一种可能实现的方式中,所述基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面,包括:
基于所述目标依赖资源和所述独立资源进行挂载处理,并生成子应用实例显示在页面。
在另一种可能实现的方式中,若所述目标子应用不能共享所述父应用信息中的依赖资源的路径,所述方法还包括:
基于所述路径配置信息对所述待加载资源进行全量加载;
基于所述路径配置信息中的依赖资源的路径,更新所述父应用信息。
在另一种可能实现的方式中,在确定所述目标子应用不共享所述父应用的依赖资源时,所述方法还包括:
获取所述目标子应用的配置文件,所述配置文件包括多个编译钩子函数;
基于可共享的父应用的目标依赖资源,在多个所述编译钩子函数中确定与每个目标依赖资源对应的目标钩子函数;
基于所述目标钩子函数分离所述目标依赖资源;
获取所述目标依赖资源对应的脚本代码,并将所述脚本代码注入所述目标子应用的源码中,以实现所述目标子应用的独立运行。
在另一种可能实现的方式中,所述在所述目标依赖资源加载完成后,基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面之后,所述方法还包括:
判断当前所述目标子应用是否被切换或关闭;
若是,则基于卸载事件将当前所述目标子应用卸载,所述卸载事件具体为umount命令,用于强制卸载所述子应用信息。
在另一种可能实现的方式中,所述判断当前所述目标子应用是否被切换或关闭,包括:
获取用户在导航页面触发的当前子应用信息;
若所述当前子应用信息与已获取的所述子应用信息不一致,则确定所述目标子应用被切换或关闭。
另一方面,本申请提供一种基于工业PAAS的依赖管理装置,包括:
第一加载模块,用于在调用目标子应用时,加载父应用信息;其中,所述父应用信息包括多个子应用的依赖资源的路径;
第一确定模块,用于基于所述目标子应用的依赖配置表,确定所述目标子应用是否可共享所述父应用信息中的依赖资源的路径;其中,所述依赖配置表存储有所述目标子应用可使用的依赖资源的路径;
第二加载模块,用于在所述目标子应用可共享所述父应用信息中的依赖资源的路径时,确定可共享的目标依赖资源的路径,基于所述目标依赖资源的路径从缓存空间中加载所述目标依赖资源,其中,所述目标依赖资源是基于所述目标依赖资源路径预先存储至所述缓存空间的资源,所述缓存空间用于缓存历史加载的依赖资源;
显示模块,用于在所述目标依赖资源加载完成后,基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面。
在另一种可能实现的方式中,在存在多个所述目标依赖资源时,所述第二加载模块,具体用于:
将多个所述目标依赖资源添加至异步队列,并依据预设规则对所述异步队列中的所述目标依赖资源进行拉取;
在所述目标依赖资源拉取完成后,基于最小***加载工具对所述目标依赖资源进行加载。
在另一种可能实现的方式中,所述装置还包括:
第一获取模块,用于获取用户在导航页面触发的子应用信息,所述子应用信息为所述用户输入的网页地址或者为所述用户选择的子应用标识;
第二确定模块,用于基于所述子应用信息,确定待调用的所述目标子应用。
在另一种可能实现的方式中,所述装置还包括:
第三加载模块,用于在所述目标依赖资源未存在于所述缓存空间时,依据所述目标依赖资源的路径对所述目标依赖资源进行加载。
在另一种可能实现的方式中,所述装置还包括:
第二获取模块,用于获取所述目标子应用的路径配置信息,所述路径配置信息包括所述目标子应用的待加载资源的路径;
第三确定模块,用于根据所述待加载资源的路径,确定除所述目标依赖资源之外的独立资源的路径;
第四加载模块,用于基于所述独立资源的路径对所述目标子应用的独立资源进行加载;
在另一种可能实现的方式中,所述显示模块具体用于:
基于所述目标依赖资源和所述独立资源进行挂载处理,并生成子应用实例显示在页面。
在另一种可能实现的方式中,所述装置还包括:
第五加载模块,用于基于所述路径配置信息对所述待加载资源进行全量加载;
更新模块,用于基于所述路径配置信息中的依赖资源的路径,更新所述父应用信息。
在另一种可能实现的方式中,所述装置还包括:
第三获取模块,用于获取所述目标子应用的配置文件,所述配置文件包括多个编译钩子函数;
第四确定模块,用于基于可共享的父应用的目标依赖资源,在多个所述编译钩子函数中确定与每个目标依赖资源对应的目标钩子函数;
分离模块,用于基于所述目标钩子函数分离所述目标依赖资源;
注入模块,用于获取所述目标依赖资源对应的脚本代码,并将所述脚本代码注入所述目标子应用的源码中,以实现所述目标子应用的独立运行。
在另一种可能实现的方式中,所述装置还包括:
判断模块,用于判断当前所述目标子应用是否被切换或关闭;
卸载模块,用于在当前所述目标子应用被切换或关闭时,基于卸载事件将当前所述目标子应用卸载,所述卸载事件具体为umount命令,用于强制卸载所述子应用信息。
在另一种可能实现的方式中,所述卸载模块具体用于:
获取用户在导航页面触发的当前子应用信息;
若所述当前子应用信息与已获取的所述子应用信息不一致,则确定所述目标子应用被切换或关闭。
第三方面,本发明提供一种电子设备,包括:
至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面任一项所述的基于PAAS的依赖管理方法。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面任一项所述的基于PAAS的依赖管理方法。
本申请提供一种基于PAAS的依赖管理方法、装置、电子设备及介质,用户在页面确定所述目标子应用后,电子设备可以使所述目标子应用的所述待加载资源通过所述父应用被加载,其具体加载流程为:首先基于所述目标子应用的所述依赖配置表,确定所述目标子应用与所述父应用之间是否存在可共享的依赖。若所述目标子应用与所述父应用之间存在可共享的依赖,电子设备会基于所述依赖配置表判断所述目标依赖资源是否已被缓存至所述缓存空间,若存在已被缓存至所述缓存空间的所述目标依赖资源,则直接从所述缓存空间中拉取所述目标依赖资源,从而节省加载该部分目标依赖资源的时间,降低所述目标子应用的待加载资源的加载时间,进而有利于提升用户的使用体验。
对于未存在在所述缓存空间的所述目标依赖资源以及除所述目标依赖资源之外的独立资源,电子设备将基于所述目标子应用的所述路径配置信息对该些资源进行加载,以保证所述目标子应用的资源完整性。将所述待加载资源加载完毕后,基于所述待加载资源,生成实例并显示在页面,以供用户查阅。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种基于工业PAAS的依赖管理的***示意图;
图2为本申请实施例提供的用户页面交互图;
图3a为本申请实施例提供的一种基于PAAS的依赖管理方法的示意图;
图3b为本申请实施例提供的一种基于PAAS的依赖管理方法的流程图;
图4为本申请实施例提供的子应用构建流程图;
图5为本申请实施例提供的一种基于工业PAAS的依赖管理装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
图1是本申请实施例提供的一种基于工业PAAS的依赖管理的***示意图。如图1所示,本申请实施例提供的***包括终端和服务器,其中,终端可以为电脑、手机、平板等可以与用户进行交互的设备。例如,该终端可以为图1所示的电脑。该电脑通过网络与服务器进行通信。
图2是本申请实施例提供的用户页面交互图。如图2所示,子应用提前注册至父应用,当用户在电脑上打开导航页面并在导航页面输入任一地址或选择任一标识时,电子设备基于地址或标识确定用户需求启动的目标子应用,控制电脑页面跳转至目标子应用的页面,并控制服务器加载目标子应用的待加载资源。基于待加载资源电子设备能生成实例并显示在电脑页面,以供用户查阅。由于导航页面中存在多个可供用户启动的子应用,因此用户可以基于需求随意切换目标子应用。当用户切换目标子应用或关闭当前目标子应用时,服务器卸载前一目标子应用加载的资源后,加载切换后的目标子应用的资源并最终显示在电脑页面上,或直接关闭页面。
对于上述过程,在切换下一目标子应用时,对下一目标子应用的资源都是全量加载,且因现代前端的技术演进,加载的资源往往都比较庞大,从而导致加载效率低下。由于各个子应用之间的资源有相当大的共用性,即各个子应用之间存在共享依赖,因此本申请提出一种基于PAAS的依赖管理方法,以在各个子应用加载资源时对依赖资源进行管理,达到大大加快页面的加载速度、降低网络资源占用、减轻js引擎的执行负担的效果,同时有利于提升用户使用体验。
图3a为本申请实施例提供的一种基于PAAS的依赖管理方法的示意图,图3b为本申请实施例提供的一种基于PAAS的依赖管理方法的流程图。下面结合图3a和图3b,对本申请的一些实施方式作详细说明。在各实施例不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。
如图3a所示,父应用用于初始化时加载基础公用依赖,以供各个子应用载入时调用。多个子应用提前进行服务注册,并将子应用信息写入父应用。具体地,子应用包括路由管理器和应用管理器。在通过父应用加载子应用时,首先获取子应用的资源路径,并基于子应用的资源路径判断子应用与父应用之间是否有依赖共享。若子应用与父应用之间有依赖共享,则依据依赖加载器对子应用资源进行加载。若子应用与父应用之间没有依赖共享,则直接依据子应用的资源路径,对待加载资源进行全量加载。对加载后的子应用资源进行挂载,基于子应用资源生成子应用实例并展示。其中,基于依赖加载器对子应用资源进行加载的过程详见下述实施例。
如图3b所示,本实施例中的方法可以包括步骤S301、步骤S302、步骤S303以及步骤S304,其中,
步骤S301,当调用目标子应用时,加载父应用信息。
其中,父应用信息包括多个子应用的依赖资源的路径,子应用信息包括子应用网页地址、子应用标识、待加载资源的路径配置等信息。电子设备在调用目标子应用之前,需由用户确定目标子应用。
可选的,用户确定目标子应用的方式可以包括:获取用户在导航页面触发的子应用信息,并基于子应用信息,确定待调用的目标子应用。
具体地,子应用信息为用户输入的网页地址或者为用户选择的子应用标识,其中,子应用标识可以为文本标识,也可以为图形标识。假设一子应用的网页地址为“xxx.com/abc”,标识为“天气”,则当用户在导航页面输入地址“xxx.com/abc”时,或者选定“天气”标识时,确定前述子应用为目标子应用。
步骤S302,基于目标子应用的依赖配置表,确定目标子应用是否可共享父应用信息中的依赖资源的路径。
其中,依赖配置表由目标子应用提供,依赖配置表存储有目标子应用可使用的依赖资源的路径,且依赖配置表是人为配置并提前写入子应用的。确定目标子应用是否可共享父应用信息中的依赖资源的路径的方法可以为:在父应用信息中查找目标子应用的可使用的依赖资源的路径,可以查找到则说明目标子应用可以共享父应用信息中的依赖资源的路径,未查找到则说明目标子应用不可以共享父应用信息中的依赖资源的路径。
步骤S303,若是,则确定可共享的目标依赖资源的路径,基于目标依赖资源的路径从缓存空间中加载目标依赖资源。
其中,确定可共享的目标依赖资源的路径即为从父应用信息中确定出目标子应用的目标依赖资源的路径。子应用资源在基于父应用被加载时,电子设备会将历史加载过的依赖资源存储至缓存空间。当用户选择或切换的目标子应用包含的可与父应用共享依赖的目标依赖资源与历史加载过的依赖资源重叠时,可直接从缓存空间内拉取对应依赖资源。
具体地,电子设备判断目标依赖资源是否为基于目标资源依赖路径预先存储至缓存空间的资源的方法可以为:在缓存空间包含的资源的路径中查找目标依赖资源的路径。
可选的,在存在多个目标依赖资源时,基于目标依赖资源的路径从缓存空间中加载目标依赖资源,可以包括:将多个目标依赖资源添加至异步队列,并基于导入序列(import-maps)按序对目标依赖资源进行拉取;在目标依赖资源拉取完成后,基于最小***加载工具(systemJs)对目标依赖资源进行加载。
可选的,当不能在缓存空间中查找到目标依赖资源时,依据目标依赖资源的路径对目标依赖资源进行加载。对于未能在缓存空间中查找到的目标依赖资源,电子设备依据对应目标依赖资源的路径对该目标依赖资源进行加载。
步骤S304,在目标依赖资源加载完成后,基于目标依赖资源进行挂载处理,并生成子应用实例显示在页面。
可选的,在基于目标依赖资源进行挂载处理,并生成子应用实例显示在页面上之前,获取目标子应用的待加载资源的路径,根据待加载资源的路径,确定除目标依赖资源之外的独立资源的路径,基于独立资源的路径对目标子应用的独立资源进行加载。
在目标子应用存在独立资源且加载完毕独立资源后,基于加载完毕的独立资源及依赖资源进行挂载处理,生成子应用实例并显示在页面。
可选的,用户在切换或关闭目标子应用时,电子设备通过卸载事件(umount事件)将路由、实例都销毁,完成子应用的卸载,以便目标子应用的切换或关闭。
具体地,电子设备判断目标子应用是否被切换或关闭的方式可以为:获取当前子应用信息,判断当前子应用信息与目标子应用的子应用信息是否一致,若不一致,则说明目标子应用已被用户切换或关闭。
在上述实施例提供的技术方案的基础上,可选的,在目标子应用不能共享父应用信息中的依赖资源的路径时,该方法还包括:基于路径配置信息对待加载资源进行全量加载;基于路径配置信息中的依赖资源的路径,更新父应用信息。
具体地,当目标子应用与父应用之间不存在依赖关系时,直接通过目标子应用的路径配置信息加载待加载资源。同时,完成该目标子应用的注册,将该目标子应用信息写入父应用中,完成父应用的更新。
在上述实施例提供的技术方案的基础上,可选的,在确定目标子应用不共享父应用的依赖资源时,该方法还包括:获取目标子应用的配置文件,配置文件包括多个编译钩子函数;基于可共享的父应用的目标依赖资源,在多个编译钩子函数中确定与每个目标依赖资源对应的目标钩子函数;基于目标钩子函数分离目标依赖资源;获取目标依赖资源对应的脚本代码,并将脚本代码注入目标子应用的源码中,以实现目标子应用的独立运行。
具体地,如图4所示的子应用的构建流程,在编译子应用之前,首先判断子应用是否有配置文件,若无,则直接进行编译,此时子应用需要被父应用加载。若有,则寻找钩子函数、进入钩子函数,并根据配置文件解析源码,生成依赖注入代码以重写源码,此时再进行编译,并根据配置文件输出编译结果,以使得子应用可以不依附父应用而进行独立的资源加载。
此外,构建父应用进入编译环节前,也应首先读取配置文件,配置文件配置了各个构建环节所需的插件以及各类配置参数。同时,若包含父应用插件,则再读取其子配置表。在父应用需要加载基础模块时,进入编译钩子函数中寻找目标钩子函数,进入目标钩子函数后解析源码并根据配置文件分离依赖,最后重写源码后注入自执行的脚本代码中。
本实施例提供的方法,在用户打开任一目标子应用时,电子设备可以先加载父应用,使父应用处于可使用状态。此时若目标子应用与父应用存在可共享的依赖,且能在缓存空间中查找到对应目标依赖资源,则直接从缓存空间中加载目标依赖资源,从而节省了基于目标子应用的目标依赖资源路径重新加载目标依赖资源的时间,提高了目标子应用的打开或切换的效率,从而有利于提升用户体验。同时,当目标子应用的待加载资源存在不与父应用共享的独立资源时,在基于路径配置信息加载完独立资源以及需要重新加载的目标依赖资源后,对待加载资源进行挂载,生成实例后显示在页面供用户查阅。
通过上述实施例从方法流程的角度介绍一种基于PAAS的依赖管理方法,下述实施例从虚拟模块或虚拟单元的角度介绍了一种基于工业PAAS的依赖管理装置,具体详见下述实施例。
本申请实施例提供一种基于工业PAAS的依赖管理装置,如图5所示,该装置包括第一加载模块51、第一确定模块52、第二加载模块53及显示模块54,其中,
第一加载模块51,用于在调用目标子应用时,加载父应用信息;其中,父应用信息包括多个子应用的依赖资源的路径;
第一确定模块52,用于基于目标子应用的依赖配置表,确定目标子应用是否可共享父应用信息中的依赖资源的路径;其中,依赖配置表存储有目标子应用可使用的依赖资源的路径;
第二加载模块53,用于在目标子应用可共享父应用信息中的依赖资源的路径时,确定可共享的目标依赖资源的路径,基于目标依赖资源的路径从缓存空间中加载目标依赖资源,其中,目标依赖资源是基于目标依赖资源路径预先存储至缓存空间的资源,缓存空间用于缓存历史加载的依赖资源;
显示模块54,用于在目标依赖资源加载完成后,基于目标依赖资源进行挂载处理,并生成子应用实例显示在页面。
本申请实施例的另一种可能的实现方式,在存在多个目标依赖资源时,第二加载模块53,具体用于:
将多个目标依赖资源添加至异步队列,并依据预设规则对异步队列中的目标依赖资源进行拉取;
在目标依赖资源拉取完成后,基于最小***加载工具(systemJs)对目标依赖资源进行加载。
本申请实施例的另一种可能的实现方式,装置还包括:
第一获取模块,用于获取用户在导航页面触发的子应用信息,子应用信息为用户输入的网页地址或者为用户选择的子应用标识;
第二确定模块,用于基于子应用信息,确定待调用的目标子应用。
本申请实施例的另一种可能的实现方式,装置还包括:
第三加载模块,用于在目标依赖资源未存在于缓存空间时,依据目标依赖资源的路径对目标依赖资源进行加载。
本申请实施例的另一种可能的实现方式,装置还包括:
第二获取模块,用于获取目标子应用的路径配置信息,路径配置信息包括目标子应用的待加载资源的路径;
第三确定模块,用于根据待加载资源的路径,确定除目标依赖资源之外的独立资源的路径;
第四加载模块,用于基于独立资源的路径对目标子应用的独立资源进行加载。
本申请实施例的另一种可能的实现方式,显示模块54具体用于:
基于目标依赖资源和独立资源进行挂载处理,并生成子应用实例显示在页面。
本申请实施例的另一种可能的实现方式,装置还包括:
第五加载模块,用于基于路径配置信息对待加载资源进行全量加载;
更新模块,用于基于路径配置信息中的依赖资源的路径,更新父应用信息。
本申请实施例的另一种可能的实现方式,装置还包括:
第三获取模块,用于获取目标子应用的配置文件,配置文件包括多个编译钩子函数;
第四确定模块,用于基于可共享的父应用的目标依赖资源,在多个编译钩子函数中确定与每个目标依赖资源对应的目标钩子函数;
分离模块,用于基于目标钩子函数分离目标依赖资源;
注入模块,用于获取目标依赖资源对应的脚本代码,并将脚本代码注入目标子应用的源码中,以实现目标子应用的独立运行。
本申请实施例的另一种可能的实现方式,装置还包括:
判断模块,用于判断当前目标子应用是否被切换或关闭。
卸载模块,用于在当前目标子应用被切换或关闭时,基于卸载事件将当前目标子应用卸载,卸载事件具体为umount命令,用于强制卸载子应用信息。
本申请实施例的另一种可能的实现方式,卸载模块具体用于:
获取用户在导航页面触发的当前子应用信息;
若当前子应用信息与已获取的子应用信息不一致,则确定目标子应用被切换或关闭。
本申请实施例中,第一加载模块51、第二加载模块53、第三加载模块、第四加载模块及第五加载模块可以为同一加载模块,可以为不同的加载模块,也可以是部分相同的加载模块。第一确定模块52、第二确定模块、第三确定模块及第四确定模块,可以为相同的确定模块,可以为不同的确定模块,也可以为部分相同的确定模块。第一获取模块、第二获取模块及第三获取模块可以为同一获取模块,可以为不同的获取模块,也可以为部分相同的获取模块。在本申请实施例中均不做限定。
本申请实施例提供的一种基于工业PAAS的依赖管理装置,适用于上述方法实施例,在此不再赘述。
本申请实施例中提供了一种电子设备,如图6所示,图6所示的电子设备包括:处理器61和存储器62。其中,处理器61和存储器62相连,如通过总线63相连。可选地,电子设备还可以包括收发器64。需要说明的是,实际应用中收发器64不限于一个,该电子设备的结构并不构成对本申请实施例的限定。
处理器61可以是中央处理器61(Central Processing Unit,CPU),通用处理器61,数据信号处理器61(Digital Signal Processor,DSP),专用集成电路(ApplicationSpecific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable GateArray,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器61也可以是实现计算功能的组合,例如包含一个或多个微处理器61组合,DSP和微处理器61的组合等。
总线63可包括一通路,在上述组件之间传送信息。总线63可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线63或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线63等。总线63可以分为地址总线63、数据总线63、控制总线63等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线63或一种类型的总线63。
存储器62可以是只读存储器62(Read Only Memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器62(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器62(Electrically Erasable Programmable Read Only Memory,EEPROM)、只读光盘(CompactDisc Read Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器62用于存储执行本申请方案的应用程序代码,并由处理器61来控制执行。处理器61用于执行存储器62中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、个人数字助理(PDA)、平板电脑(PAD)、便携式多媒体播放器(PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。还可以为服务器等。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (14)

1.一种基于PAAS的依赖管理方法,其特征在于,包括:
当调用目标子应用时,加载父应用信息;其中,所述父应用信息包括多个子应用的依赖资源的路径;
基于所述目标子应用的依赖配置表,确定所述目标子应用是否可共享所述父应用信息中的依赖资源的路径;其中,所述依赖配置表存储有所述目标子应用可使用的依赖资源的路径;
若是,则确定可共享的目标依赖资源的路径,基于所述目标依赖资源的路径从缓存空间中加载所述目标依赖资源,其中,所述目标依赖资源是基于所述目标依赖资源路径预先存储至所述缓存空间的资源,所述缓存空间用于缓存历史加载的依赖资源;
在所述目标依赖资源加载完成后,基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面;
在确定所述目标子应用不共享所述父应用的依赖资源时,所述方法还包括:
获取所述目标子应用的配置文件,所述配置文件包括多个编译钩子函数;
基于可共享的父应用的目标依赖资源,在多个所述编译钩子函数中确定与每个目标依赖资源对应的目标钩子函数;
基于所述目标钩子函数分离所述目标依赖资源;
获取所述目标依赖资源对应的脚本代码,并将所述脚本代码注入所述目标子应用的源码中,以实现所述目标子应用的独立运行。
2.根据权利要求1所述的方法,其特征在于,若存在多个所述目标依赖资源,则所述基于所述目标依赖资源的路径从缓存空间中加载所述目标依赖资源,包括:
将多个所述目标依赖资源添加至异步队列,并依据预设规则对所述异步队列中的所述目标依赖资源进行拉取;
在所述目标依赖资源拉取完成后,基于最小***加载工具对所述目标依赖资源进行加载。
3.根据权利要求1所述的方法,其特征在于,所述调用目标子应用之前,所述方法还包括:
获取用户在导航页面触发的子应用信息,所述子应用信息为所述用户输入的网页地址或者为所述用户选择的子应用标识;
基于所述子应用信息,确定待调用的所述目标子应用。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述目标依赖资源未存在于所述缓存空间,则依据所述目标依赖资源的路径对所述目标依赖资源进行加载。
5.根据权利要求1所述的方法,其特征在于,所述基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面之前,所述方法还包括:
获取所述目标子应用的路径配置信息,所述路径配置信息包括所述目标子应用的待加载资源的路径;
根据所述待加载资源的路径,确定除所述目标依赖资源之外的独立资源的路径;
基于所述独立资源的路径对所述目标子应用的独立资源进行加载。
6.根据权利要求5所述的方法,其特征在于,所述基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面,包括:
基于所述目标依赖资源和所述独立资源进行挂载处理,并生成子应用实例显示在页面。
7.根据权利要求5所述的方法,其特征在于,若所述目标子应用不能共享所述父应用信息中的依赖资源的路径,所述方法还包括:
基于所述路径配置信息对所述待加载资源进行全量加载;
基于所述路径配置信息中的依赖资源的路径,更新所述父应用信息。
8.根据权利要求3所述的方法,其特征在于,所述在所述目标依赖资源加载完成后,基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面之后,所述方法还包括:
判断当前所述目标子应用是否被切换或关闭;
若是,则基于卸载事件将当前所述目标子应用卸载,所述卸载事件具体为umount命令,用于强制卸载所述子应用信息。
9.根据权利要求8所述的方法,其特征在于,所述判断当前所述目标子应用是否被切换或关闭,包括:
获取用户在导航页面触发的当前子应用信息;
若所述当前子应用信息与已获取的所述子应用信息不一致,则确定所述目标子应用被切换或关闭。
10.一种基于工业PAAS的依赖管理装置,其特征在于,包括:
第一加载模块,用于在调用目标子应用时,加载父应用信息;其中,所述父应用信息包括多个子应用的依赖资源的路径;
第一确定模块,用于基于所述目标子应用的依赖配置表,确定所述目标子应用是否可共享所述父应用信息中的依赖资源的路径;其中,所述依赖配置表存储有所述目标子应用可使用的依赖资源的路径;
第二加载模块,用于在所述目标子应用可共享所述父应用信息中的依赖资源的路径时,确定可共享的目标依赖资源的路径,基于所述目标依赖资源的路径从缓存空间中加载所述目标依赖资源,其中,所述目标依赖资源是基于所述目标依赖资源路径预先存储至所述缓存空间的资源,所述缓存空间用于缓存历史加载的依赖资源;
显示模块,用于在所述目标依赖资源加载完成后,基于所述目标依赖资源进行挂载处理,并生成子应用实例显示在页面;
第三获取模块,用于在确定所述目标子应用不共享所述父应用的依赖资源时,获取所述目标子应用的配置文件,所述配置文件包括多个编译钩子函数;
第四确定模块,用于基于可共享的父应用的目标依赖资源,在所述多个编译钩子函数中确定与每个目标依赖资源对应的目标钩子函数;
分离模块,用于基于所述目标钩子函数分离所述目标依赖资源;
注入模块,用于获取所述目标依赖资源对应的脚本代码,并将所述脚本代码注入所述目标子应用的源码中,以实现所述目标子应用的独立运行。
11.根据权利要求10所述的装置,其特征在于,所述第二加载模块,具体用于:
将多个所述目标依赖资源添加至异步队列,并依据预设规则对所述异步队列中的所述目标依赖资源进行拉取;
在所述目标依赖资源拉取完成后,基于最小***加载工具对所述目标依赖资源进行加载。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第一获取模块,用于获取用户在导航页面触发的子应用信息,所述子应用信息为所述用户输入的网页地址或者为所述用户选择的子应用标识;
第二确定模块,用于基于所述子应用信息,确定待调用的所述目标子应用。
13.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1-9任一项所述的基于PAAS的依赖管理方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-9任一项所述的基于PAAS的依赖管理方法。
CN202210410330.2A 2022-04-19 2022-04-19 基于paas的依赖管理方法、装置、电子设备及介质 Active CN114764354B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210410330.2A CN114764354B (zh) 2022-04-19 2022-04-19 基于paas的依赖管理方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210410330.2A CN114764354B (zh) 2022-04-19 2022-04-19 基于paas的依赖管理方法、装置、电子设备及介质

Publications (2)

Publication Number Publication Date
CN114764354A CN114764354A (zh) 2022-07-19
CN114764354B true CN114764354B (zh) 2024-01-05

Family

ID=82364880

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210410330.2A Active CN114764354B (zh) 2022-04-19 2022-04-19 基于paas的依赖管理方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN114764354B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117648179A (zh) * 2023-11-23 2024-03-05 北京菱云科技有限公司 一种资源分配方法、装置、电子设备和存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354049A (zh) * 2015-09-29 2016-02-24 北京畅游天下网络技术有限公司 一种三维动画引擎的资源加载方法、装置及***
CN107105336A (zh) * 2017-04-19 2017-08-29 腾讯科技(深圳)有限公司 数据处理方法及数据处理装置
US9928058B1 (en) * 2014-10-28 2018-03-27 Amazon Technologies, Inc. Optimized class loading
CN108108205A (zh) * 2016-11-25 2018-06-01 腾讯科技(深圳)有限公司 应用程序页面处理方法和装置
CN110298002A (zh) * 2019-05-31 2019-10-01 福建新大陆软件工程有限公司 客户端web资源管理方法及设备
CN110865888A (zh) * 2019-11-28 2020-03-06 米哈游科技(上海)有限公司 一种资源加载方法、装置、服务器及存储介质
CN111198730A (zh) * 2018-10-30 2020-05-26 广州腾讯科技有限公司 子应用程序启动的方法、装置、终端及计算机存储介质
CN112306587A (zh) * 2019-07-15 2021-02-02 腾讯科技(深圳)有限公司 页面的显示处理方法、装置、及终端设备
CN113065085A (zh) * 2021-03-22 2021-07-02 北京沃东天骏信息技术有限公司 数据加载方法、装置、目标服务器、目标终端及存储介质
CN113064676A (zh) * 2020-12-29 2021-07-02 上海金融期货信息技术有限公司 基于js入口的前端运行时远程组件共享机制的方法
CN113204726A (zh) * 2021-07-07 2021-08-03 苏州浪潮智能科技有限公司 一种bs架构页面响应时间优化方法、装置、设备及介质
CN113254237A (zh) * 2021-06-11 2021-08-13 海尔数字科技(青岛)有限公司 前端应用调用方法、设备、存储介质及程序产品

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107102880B (zh) * 2017-05-11 2018-11-23 腾讯科技(深圳)有限公司 消息处理方法、装置、存储介质和计算机设备
CN109814939B (zh) * 2017-11-20 2021-10-15 华为技术有限公司 一种动态加载方法、目标文件的制作方法及装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9928058B1 (en) * 2014-10-28 2018-03-27 Amazon Technologies, Inc. Optimized class loading
CN105354049A (zh) * 2015-09-29 2016-02-24 北京畅游天下网络技术有限公司 一种三维动画引擎的资源加载方法、装置及***
CN108108205A (zh) * 2016-11-25 2018-06-01 腾讯科技(深圳)有限公司 应用程序页面处理方法和装置
CN107105336A (zh) * 2017-04-19 2017-08-29 腾讯科技(深圳)有限公司 数据处理方法及数据处理装置
CN111198730A (zh) * 2018-10-30 2020-05-26 广州腾讯科技有限公司 子应用程序启动的方法、装置、终端及计算机存储介质
CN110298002A (zh) * 2019-05-31 2019-10-01 福建新大陆软件工程有限公司 客户端web资源管理方法及设备
CN112306587A (zh) * 2019-07-15 2021-02-02 腾讯科技(深圳)有限公司 页面的显示处理方法、装置、及终端设备
CN110865888A (zh) * 2019-11-28 2020-03-06 米哈游科技(上海)有限公司 一种资源加载方法、装置、服务器及存储介质
CN113064676A (zh) * 2020-12-29 2021-07-02 上海金融期货信息技术有限公司 基于js入口的前端运行时远程组件共享机制的方法
CN113065085A (zh) * 2021-03-22 2021-07-02 北京沃东天骏信息技术有限公司 数据加载方法、装置、目标服务器、目标终端及存储介质
CN113254237A (zh) * 2021-06-11 2021-08-13 海尔数字科技(青岛)有限公司 前端应用调用方法、设备、存储介质及程序产品
CN113204726A (zh) * 2021-07-07 2021-08-03 苏州浪潮智能科技有限公司 一种bs架构页面响应时间优化方法、装置、设备及介质

Also Published As

Publication number Publication date
CN114764354A (zh) 2022-07-19

Similar Documents

Publication Publication Date Title
CN110389936B (zh) 一种启动小程序的方法、设备和计算机存储介质
US8739147B2 (en) Class isolation to minimize memory usage in a device
US11474810B2 (en) Run-time application modification
US10019598B2 (en) Dynamic service discovery
US20140208326A1 (en) File presenting method and apparatus for a smart terminal
WO2017214241A1 (en) Information presentation method, device, and system
CN111372115B (zh) 应用程序的访问方法及装置、通讯***
US8984542B2 (en) Method and system for binding objects in dynamic programming languages using caching techniques
CN114764354B (zh) 基于paas的依赖管理方法、装置、电子设备及介质
US20040123308A1 (en) Hybird of implicit and explicit linkage of windows dynamic link labraries
CN104050001A (zh) 基于Android***的资源处理方法、装置和设备
CN113296841A (zh) 应用程序处理方法、装置、设备及介质
US20150363241A1 (en) Method and apparatus to migrate stacks for thread execution
CN111722888B (zh) 一种操作执行方法、装置、设备及可读存储介质
CN111142972B (zh) 用于扩展应用程序的功能的方法、装置、***及介质
CN114510334A (zh) 类实例的调用方法、装置、电子设备及自动驾驶车辆
CN114637969A (zh) 目标对象的鉴权方法及装置
CN113961298A (zh) 一种页面切换方法、装置、设备及介质
CN114489826A (zh) 芯片运行方法、装置、存储介质及电子设备
CN111931111A (zh) 一种网页开发方法、网页展示方法、装置及设备
CN111796865A (zh) 一种字节码文件修改方法、装置、终端设备及介质
CN116400945B (zh) 一种动态链接库升级方法、电子设备及存储介质
CN116700694B (zh) 小程序引擎
CN116737251A (zh) 一种启动方法、装置、终端设备及介质
CN115309471A (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
CP03 Change of name, title or address

Address after: 266500 No. 1, Minshan Road, Qingdao area, China (Shandong) pilot Free Trade Zone, Qingdao, Shandong

Patentee after: CAOS industrial Intelligence Research Institute (Qingdao) Co.,Ltd.

Country or region after: China

Patentee after: Kaos Digital Technology (Qingdao) Co.,Ltd.

Patentee after: Karos IoT Technology Co.,Ltd.

Address before: 266500 No. 1, Minshan Road, Qingdao area, China (Shandong) pilot Free Trade Zone, Qingdao, Shandong

Patentee before: CAOS industrial Intelligence Research Institute (Qingdao) Co.,Ltd.

Country or region before: China

Patentee before: Haier digital technology (Qingdao) Co.,Ltd.

Patentee before: Haier Kaos IOT Technology Co.,Ltd.

Address after: 266500 No. 1, Minshan Road, Qingdao area, China (Shandong) pilot Free Trade Zone, Qingdao, Shandong

Patentee after: CAOS industrial Intelligence Research Institute (Qingdao) Co.,Ltd.

Country or region after: China

Patentee after: Haier digital technology (Qingdao) Co.,Ltd.

Patentee after: Haier Kaos IOT Technology Co.,Ltd.

Address before: 266500 No. 1, Minshan Road, Qingdao area, China (Shandong) pilot Free Trade Zone, Qingdao, Shandong

Patentee before: CAOS industrial Intelligence Research Institute (Qingdao) Co.,Ltd.

Country or region before: China

Patentee before: Haier digital technology (Qingdao) Co.,Ltd.

Patentee before: Haier CAOS IOT Ecological Technology Co.,Ltd.

CP03 Change of name, title or address