System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,特别是涉及一种自适应环境的插件框架设计方法、系统、设备及储存介质。
技术介绍
1、随着软件运行环境的不断复杂化,简单的组装功能的软件实现方案已经无法满足当前业务场景,越来越多的软件也正在进行模块化的开发流程。然而,对于一个安全软件来说,一般的模块化无法满足集成、扩展、跨平台兼容性、性能优化等需要,因此自适应环境的插件方案更是十分重要的。
2、并且,随着软件应用场景的不断扩展,用户对软件功能的需求越来越多样化,插件化开发可以让软件开发者将功能拆解为独立模块,用户根据需求选择,从而满足个性化需求。
3、扩展性:开发者可以无需修改软件核心代码,发布新的插件扩展软件的功能。
4、复用性:开发者将一些通用功能封装成插件,提高代码复用性,减少代码冗余,提高开发效率。
5、插件化技术满足软件需求的多样性、扩展性、复用性,灵活适应不同需求,提供软件开发效率和用户体验。
6、对于软件插件化,目前的方案有:
7、1、管道式插件。
8、2、洋葱式插件。
9、对于管道式插件设计,需要考虑插件之间的数据密切性和执行顺序,增加开发难度和设计复杂度,如果管道流程设计不合理,可能会导致数据的不完整性和不准确性,对系统造成影响,加重开发者心智负担。
10、对于洋葱式插件设计,需要插件之间的协作和数据传递,即处理输入流和处理输出流,在处理复杂逻辑时可能导致代码变得复杂难以理解。
11、在工业场景中,众多插件的使用,给系统带来
12、由此可见,上述现有的插件设计方法在使用上,显然仍存在有不便与缺陷,而亟待加以进一步改进。如何能创设一种新的插件设计方法,成为当前业界急需改进的目标。
技术实现思路
1、有鉴于此,本公开实施例提供一种自适应环境的插件框架设计方法,至少部分解决现有技术中存在的问题。
2、第一方面,本公开实施例提供了一种自适应环境的插件框架设计方法,所述方法包括以下步骤:
3、收集运行环境信息指标,包括:系统类型及使用场景、内存使用率、cpu使用率、网络i/o和磁盘i/o;
4、读取预设的运行环境信息指标权重;
5、对所述环境信息指标进行归一化,将它们的值映射到0到1的范围内;
6、基于所述权重和归一化后的值计算加权指标;
7、基于所述加权指标通过自适应环境算法模型自动选择动态调整插件的加载与卸载。
8、根据本公开实施例的一种具体实现方式,所述对所述环境信息指标进行归一化,包括:
9、将内存使用率除以100%进行归一化;
10、将cpu使用率除以100%进行归一化;
11、网络i/o除以最大网络带宽进行归一化;
12、磁盘i/o通过以下公式进行归一化:
13、
14、根据本公开实施例的一种具体实现方式,所述基于所述权重和归一化后的值计算加权指标,通过以下公式计算:
15、weighted score=(weightofmemory*normalizedmemoryusage)+
16、(weightofcpu*normalized cpu usage)+
17、(weightofnetwork*normalizednetwork i/o)+
18、(weightofdisk*normalizeddisk i/o)
19、其中,weighted score为加权指标;weight ofmemory为内存使用率权重;normalized memory usage为归一算法计算的内存使用率;weight of cpu为cpu使用率权重;normalized cpu usage为归一算法计算的cpu使用率;weight ofnetwork为网络i/o权重;normalizednetwork i/o为归一算法计算的网络i/o使用率;weight ofdisk为磁盘i/o权重;normalized disk i/o为归一算法计算的一定时间内磁盘i/o使用率。
20、根据本公开实施例的一种具体实现方式,所述基于所述加权指标通过自适应环境算法模型自动选择动态调整插件的加载与卸载,包括:
21、当加权指标小于等于插件权重时,所述插件可正常加载;
22、当加权指标大于插件权重时,所述插件不应被加载,须卸载。
23、根据本公开实施例的一种具体实现方式,所述方法还包括:
24、注入并初始化插件;其中,当插件初始化失败时,禁用该插件;
25、加载运行所述插件;其中,当插件启动失败时,禁用该插件;
26、接收插件命令和调用参数,通过命令查找到支持该能力的插件模块,然后转调用目标插件完成工作;
27、停止所有插件,然后卸载插件。
28、第二方面,本公开实施例提供了一种自适应环境的插件框架设计系统,所述系统包括:
29、采集模块,被配置用于收集运行环境信息指标,包括:系统类型及使用场景、内存使用率、cpu使用率、网络i/o和磁盘i/o;
30、权重模块,被配置用于读取预设的运行环境信息指标权重;
31、归一化模块,被配置用于对所述环境信息指标进行归一化,将它们的值映射到0到1的范围内;
32、加权指标模块,被配置用于基于所述权重和归一化后的值计算加权指标;
33、调整模块,被配置用于基于所述加权指标通过自适应环境算法模型自动选择动态调整插件的加载与卸载。
34、根据本公开实施例的一种具体实现方式,所述系统还包括:
35、插件管理模块,被配置用于注入并初始化插件;其中,当插件初始化失败时,禁用该插件;
36、加载运行所述插件;其中,当插件启动失败时,禁用该插件;
37、接收插件命令和调用参数,通过命令查找到支持该能力的插件模块,然后转调用目标插件完成工作;以及,
38、停止所有插件,然后卸载插件。
39、第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:
40、至少一个处理器;以及,
41、与所述至少一个处理器通信连接的存储器;其中,
42、所述存储器存储有能够被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器前述第一方面或第一方面的任一实现方式中的任一项所述的自适应环境的插件框架设计方法。
43、第四方面,本公开实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令当由至少一个处理器执行时使所述至少一个处理器执行前述第一方面或第一方面的任一实现方式中的自适应环境的插件框架设计方法。
44、第本文档来自技高网...
【技术保护点】
1.一种自适应环境的插件框架设计方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的自适应环境的插件框架设计方法,其特征在于,所述对所述环境信息指标进行归一化,包括:
3.根据权利要求1所述的自适应环境的插件框架设计方法,其特征在于,所述基于所述权重和归一化后的值计算加权指标,通过以下公式计算:
4.根据权利要求1所述的自适应环境的插件框架设计方法,其特征在于,所述基于所述加权指标通过自适应环境算法模型自动选择动态调整插件的加载与卸载,包括:
5.根据权利要求1所述的自适应环境的插件框架设计方法,其特征在于,所述方法还包括:
6.一种自适应环境的插件框架设计系统,其特征在于,所述系统包括:
7.根据权利要求6所述的自适应环境的插件框架设计系统,其特征在于,所述系统还包括:
8.一种电子设备,其特征在于,该电子设备包括:
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令当由至少一个处理器执行时使所述至少一个处理器执行如
...【技术特征摘要】
1.一种自适应环境的插件框架设计方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的自适应环境的插件框架设计方法,其特征在于,所述对所述环境信息指标进行归一化,包括:
3.根据权利要求1所述的自适应环境的插件框架设计方法,其特征在于,所述基于所述权重和归一化后的值计算加权指标,通过以下公式计算:
4.根据权利要求1所述的自适应环境的插件框架设计方法,其特征在于,所述基于所述加权指标通过自适应环境算法模型自动选择动态调整插件的加载与卸载,包括:
5.根据权利要求1...
【专利技术属性】
技术研发人员:郭昌盛,田鹏飞,李华生,王磊,姜昱西,
申请(专利权)人:北京江民新科技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。