本申请涉及计算机,尤其涉及一种基于容器隔离的应用处理方法、装置、设备及存储介质。
背景技术:
1、基于spring框架的应用程序的启动过程中,需要对应用程序的隔离插件对应的组件进行实例化处理。
2、现有技术中,在对应用程序的隔离插件对应的组件进行实例化处理的时候,可以获取与待实例化处理的组件具有依赖关系的组件类别下的组件。进而对待实例化处理的组件完成实例化处理过程。
3、然而上述过程中,会获取与待实例化处理的组件具有依赖关系的组件类别下的所有组件,其中,若应用程序中包括至少两个相同的隔离插件,所获取的所有组件中,除与待实例化处理的组件具有依赖关系的组件类别下的组件之外,还包括与其他隔离插件对应的组件具有依赖关系的组件类别下的组件,会干扰到对待实例化处理的组件的实例化处理过程。
技术实现思路
1、本申请提供一种基于容器隔离的应用处理方法、装置、设备及存储介质,用以解决应用处理方法的抗干扰能力差的问题。
2、第一方面,本申请提供一种基于容器隔离的应用处理方法,包括:
3、响应于实例化指令,向所述根容器中注入待处理的组件;其中,所述实例化指令用于指示对待处理的组件进行实例化处理,所述待处理的组件为指定的隔离插件对应的组件;
4、确定与所述指定的隔离插件对应的子容器,并从与所述指定的隔离插件对应的子容器中,获取与所述待处理的组件之间具有依赖关系的其他的组件;
5、基于所述根容器,根据所获取的其他的组件,对所述待处理的组件进行实例化处理。
6、第二方面,本申请提供一种基于容器隔离的应用处理装置,包括:
7、注入模块,用于响应于实例化指令,向所述根容器中注入待处理的组件;其中,所述实例化指令用于指示对待处理的组件进行实例化处理,所述待处理的组件为指定的隔离插件对应的组件;
8、确定模块,用于确定与所述指定的隔离插件对应的子容器,并从与所述指定的隔离插件对应的子容器中,获取与所述待处理的组件之间具有依赖关系的其他的组件;
9、处理模块,用于基于所述根容器,根据所获取的其他的组件,对所述待处理的组件进行实例化处理。
10、第三方面,本申请提供一种电子设备,包括:
11、处理器,存储器,通信接口;
12、所述存储器用于存储所述处理器的可执行指令;
13、其中,所述处理器配置为经由执行所述可执行指令来执行如上第一方面所述的基于容器隔离的应用处理方法。
14、第四方面,本申请提供一种可读存储介质,包括:其上存储有计算机程序,所述计算机程序被处理器执行时实现执行如上第一方面所述的基于容器隔离的应用处理方法。
15、本申请提供的基于容器隔离的应用处理方法、装置、设备及存储介质,通过响应于实例化指令,向根容器中注入待处理的组件,确定与指定的隔离插件对应的子容器,并从与指定的隔离插件对应的子容器中,获取与待处理的组件之间具有依赖关系的其他的组件,基于根容器,根据所获取的其他的组件,对待处理的组件进行实例化处理,其中,在对待处理的组件进行实例化处理的过程中,从指定的隔离插件对应的子容器中直接获取与待处理的组件之间具有依赖关系的其他的组件,可以避免从根容器中获取与待实例化处理的组件具有依赖关系的组件类别下的组件时,获取的与其他隔离插件对应的组件具有依赖关系的组件类别下的组件,对待处理的组件进行实例化处理的干扰,提高应用处理方法的抗干扰能力。
1.一种基于容器隔离的应用处理方法,其特征在于,所述方法应用于电子设备,所述电子设备中部署有应用程序,所述应用程序中包括根容器、至少一个子容器以及至少一个隔离插件,所述隔离插件与所述子容器之间一一对应,所述子容器中包括与子容器对应的隔离插件的各组件;所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述待处理的组件中携带有注解信息,其中,所述注解信息用于指示出与组件对应的子容器;确定与所述指定的隔离插件对应的子容器,包括:确定所述注解信息所指示的子容器,为与所述指定的隔离插件对应的子容器。
3.根据权利要求1所述的方法,其特征在于,从与所述指定的隔离插件对应的子容器中,获取与所述待处理的组件之间具有依赖关系的其他的组件,包括:
4.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
5.根据权利要求4所述的方法,其特征在于,所述操作对象中操作类的属性包括插件依赖信息和拓展点实现类,所述插件依赖信息表征插件之间的依赖关系,所述拓展点实现类表征插件的功能;根据所述隔离插件的操作对象,对所述隔离插件的子容器进行依赖注入处理,得到隔离插件的组件,以启动所述隔离插件,包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.根据权利要求5所述的方法,其特征在于,根据所述隔离插件的操作对象中的实现类信息,向所述隔离插件对应的子容器注入至少一个拓展点,得到处理后的子容器,包括:
8.根据权利要求5所述的方法,其特征在于,所述方法还包括:
9.根据权利要求4所述的方法,其特征在于,获取所述应用程序的隔离插件的操作对象,包括:
10.根据权利要求9所述的方法,其特征在于,所述插件目录包括:元数据目录以及拓展点的描述文件,所述元数据目录表征所述应用程序的隔离插件的基本信息的存储位置,所述拓展点的描述文件表征拓展点的实现类的存储位置;遍历所述应用程序的隔离插件的至少一个插件目录,得到所述应用程序的隔离插件的操作对象,包括:
11.根据权利要求4所述的方法,其特征在于,根据各所述隔离插件的操作对象,确定出启动顺序信息,包括:
12.根据权利要求11所述的方法,其特征在于,根据各所述启动链指示的启动顺序,确定所述启动顺序信息,包括:
13.根据权利要求4-12中任一项所述的方法,其特征在于,所述方法还包括: