首页> 中国专利> 一种更新解释器和线程池单元的对应关系的方法和装置

一种更新解释器和线程池单元的对应关系的方法和装置

摘要

本申请实施例公开了一种更新解释器和线程池单元的对应关系的方法和装置,可以当解释器被使用时,更新设备将解释器对应的权重增加第一预设值;若解释器在预设时间内未被使用,则更新设备将解释器对应的权重减少第二预设值;若解释器对应的权重大于或等于第三预设值,则更新设备将解释器对应的线程池单元更新为非公平锁管理的线程池单元;若解释器对应的权重小于或等于第四预设值,则更新设备将解释器对应的线程池单元更新为公平锁管理的线程池单元。从而使用频率高的解释器对应非公平锁管理的解释器,使用频率低的解释器对应公平锁管理的解释器,提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。

著录项

  • 公开/公告号CN112632095A

    专利类型发明专利

  • 公开/公告日2021-04-09

    原文格式PDF

  • 申请/专利权人 中国农业银行股份有限公司;

    申请/专利号CN202011642605.2

  • 发明设计人 张丽彪;陈尊;

    申请日2020-12-31

  • 分类号G06F16/23(20190101);G06F16/242(20190101);

  • 代理机构11227 北京集佳知识产权代理有限公司;

  • 代理人韩丽波

  • 地址 100005 北京市东城区建国门内大街69号

  • 入库时间 2023-06-19 10:32:14

说明书

技术领域

本申请涉及数据处理领域,特别是涉及一种更新解释器和线程池单元的对应关系的方法和装置。

背景技术

目前,解释器和线程池的映射关系由人为设定,靠人经验设定的解释器-线程池映射表,不能较好的反应解释器使用的实际情况,因此导致由人设定的解释器和线程池的映射关系不够合理,不能够很好的适应实际情况。

如何提高解释器和线程池对应关系的适应性,使对应关系更符合实际情况,使解释器和线程池的映射关系的设置更为合理,是本领域亟待解决的技术问题。

申请内容

为了解决上述技术问题,本申请提供了一种更新解释器和线程池单元的对应关系的方法和装置,可以根据解释器的使用频率来更新解释器和线程池单元的对应关系,提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。

为实现上述目的,本申请有如下技术方案:

一方面,本申请实施例提供了一种更新解释器和线程池单元的对应关系的方法,所述方法包括:

若解释器被使用,则更新设备将所述解释器对应的权重增加第一预设值;

若所述解释器在预设时间内未被使用,则所述更新设备将所述解释器对应的权重减少第二预设值;

若所述解释器对应的权重大于或等于第三预设值,则所述更新设备将所述解释器对应的线程池单元更新为非公平锁管理的线程池单元;

若所述解释器对应的权重小于或等于第四预设值,则所述更新设备将所述解释器对应的线程池单元更新为公平锁管理的线程池单元。

可选的,所述解释器被使用,具体为:

所述更新设备获取提交的查询指令以及所述查询指令对应的解释器;

所述更新设备根据解释器-线程池映射表调用所述解释器对应的线程池单元以便所述线程池单元执行所述查询指令得到执行结果。

可选的,所述查询指令采用结构化查询语言编写。

可选的,所述更新设备根据解释器-线程池映射表调用所述解释器对应的线程池单元以便所述线程池单元执行所述查询指令得到执行结果,包括:

所述更新设备根据解释器-线程池映射表调用所述解释器对应的线程池单元以便所述线程池单元根据所述查询指令从所述查询指令对应的数据库中查询得到执行结果。

可选的,所述数据库包括:

Hbase数据库或mysql数据库。

另一方面,本申请实施例提供了一种更新解释器和线程池单元的对应关系的装置,所述装置包括:

增加单元,用于当解释器被使用时,则将所述解释器对应的权重增加第一预设值;

减少单元,用于当所述解释器在预设时间内未被使用时,则将所述解释器对应的权重减少第二预设值;

第一更新单元,用于当所述解释器对应的权重大于或等于第三预设值时,则将所述解释器对应的线程池单元更新为非公平锁管理的线程池单元;

第二更新单元,用于当所述解释器对应的权重小于或等于第四预设值时,则将所述解释器对应的线程池单元更新为公平锁管理的线程池单元。

可选的,所述增加单元,还包括:

指令获取单元,用于所述更新设备获取提交的查询指令以及所述查询指令对应的解释器;

执行单元,用于所述更新设备根据解释器-线程池映射表调用所述解释器对应的线程池单元以便所述线程池单元执行所述查询指令得到执行结果。

可选的,所述查询指令采用结构化查询语言编写。

可选的,所述执行单元,还用于根据解释器-线程池映射表调用所述解释器对应的线程池单元以便所述线程池单元根据所述查询指令从所述查询指令对应的数据库中查询得到执行结果。

可选的,所述数据库包括:

Hbase数据库或mysql数据库。

由上述技术方案可以看出,本申请实施例提供了一种更新解释器和线程池单元的对应关系的方法和装置,可以当解释器被使用时,更新设备将解释器对应的权重增加第一预设值;若解释器在预设时间内未被使用,则更新设备将解释器对应的权重减少第二预设值;若解释器对应的权重大于或等于第三预设值,则更新设备将解释器对应的线程池单元更新为非公平锁管理的线程池单元;若解释器对应的权重小于或等于第四预设值,则更新设备将解释器对应的线程池单元更新为公平锁管理的线程池单元。从而使用频率高的解释器对应着非公平锁管理的解释器,使用频率低的解释器对应着公平锁管理的解释器,提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种更新解释器和线程池单元的对应关系的方法的流程图;

图2为本申请实施例提供的一种解释器使用的全步骤流程图;

图3为本申请实施例提供的一种解释器模块、线程池管理模块和解释器-线程池关系映射器组成框图;

图4为本申请实施例提供的一种更新解释器和线程池单元的对应关系的具体的应用场景的步骤图;

图5为本申请实施例提供的一种更新解释器和线程池单元的对应关系的装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的申请人经过研究发现,目前,解释器和线程池的映射关系由人为设定,靠人经验设定的解释器-线程池映射表,不能较好的反应解释器使用的实际情况,因此导致由人设定的解释器和线程池的映射关系不够合理,不能够很好的适应实际情况。

如何提高解释器和线程池对应关系的适应性,使解释器和线程池的映射关系的设置更为合理,减少系统资源的消耗。是本领域亟待解决的技术问题。

为了解决上述问题,在本申请实施例中,提供了一种更新解释器和线程池单元的对应关系的方法和装置,可以当解释器被使用时,更新设备将解释器对应的权重增加第一预设值;若解释器在预设时间内未被使用,则更新设备将解释器对应的权重减少第二预设值;若解释器对应的权重大于或等于第三预设值,则更新设备将解释器对应的线程池单元更新为非公平锁管理的线程池单元;若解释器对应的权重小于或等于第四预设值,则更新设备将解释器对应的线程池单元更新为公平锁管理的线程池单元。从而使用频率高的解释器对应着非公平锁管理的解释器,使用频率低的解释器对应着公平锁管理的解释器,提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。

下面结合附图,详细说明本申请的各种非限制性实施方式。

参见图1,该图为本申请实施例提供的一种更新解释器和线程池单元的对应关系的流程图。如图1所示,可以包括:

S101,若解释器被使用,则更新设备将所述解释器对应的权重增加第一预设值。

在本申请实施例中,解释器被使用具体可以为,参见图2所示,为本申请实施例提供的一种解释器使用的全步骤流程图,用户提交一个查询指令,查询指令可以由结构化查询语言(SQL)所编写,不同的查询指令对应着不同的解释器,例如查询指令A可以对应解释器A,查询指令B可以对应解释器B,等等,参见图3所示,且每个解释器对应了各自的权重。

根据解释器-线程池映射表调用解释器对应的线程池单元以便线程池单元执行查询指令得到执行结果。其中,解释器-线程池映射表定义了各解释器和线程池之间的关系,即不同的解释器对应着不同的线程池,例如解释器A可以对应线程池A,解释器B可以对应线程池B,参见图3所示,对于不同的线程池用于管理的锁的类型也不同,总体分为公平锁管理的解释器和非公平锁管理的解释器。得到的执行结果根据查询请求的不同而不同,例如,当用户发来的查询指令为查询存款指令时,可以根据查询指令从对应的数据库中查找,从而得到对应的存款信息。

需要说明的时,本申请实施例在此不对数据库的类型作具体限定,数据库可以为Hbase数据库或mysql数据库等。

其中,解释器,本质是一个插件,通过配置实现对于mysql数据库或Hbase数据库等不同数据库的连接。线程池单元,是管理线程的容器,不同的线程池单元管理不同个数、不同种类的线程。由公平锁锁定的资源线程需要排队获取锁的钥匙,由非公平锁锁定的资源线程依靠竞争的方式获取锁的钥匙。

在本申请实施例中,解释器每使用一次,解释器对应的权重增加第一预设值,举例来说,即解释器每使用一次,则得到一个正向奖励,Q值提升,即增加第一预设值。

需要说明的时,第一预设值可以由本领域技术人员根据实际情况自行设定,本申请在此不作具体限定。

S102,若所述解释器在预设时间内未被使用,则所述更新设备将所述解释器对应的权重减少第二预设值。

在本申请实施例中,若解释器在预设时间内未被使用,则更新设备将解释器对应的权重减少第二预设值。

当解释器在一定的预设时间内未被使用时,说明此时解释器的对应的查询指令偏少,为了减小系统开销,此时可以将该解释器对应的权重减少第二预设值,并更新图3中所示的解释器模块的解释器的权重,例如可以将Q值作为解释器对应的权重,相应的减少Q值。

参看图4所示,为本申请实施例提供的一种更新解释器和线程池单元的对应关系的具体的应用场景的步骤图,预设时间的监控可以由负反馈定时器来进行计时,负反馈定时器定时遍历系统中的定时器,判断解释器再一个时间段内都未调用执行,将Q值累加一个负值,即减少第二预设值。

需要说明的时,第二预设值可以由本领域技术人员根据实际情况自行设定,本申请在此不作具体限定。

S103,若所述解释器对应的权重大于或等于第三预设值,则所述更新设备将所述解释器对应的线程池单元更新为非公平锁管理的线程池单元。

在本申请实施例中,参考图4所示,为本申请实施例提供的一种更新解释器和线程池单元的对应关系的具体的应用场景的步骤图,其中,映射更新定时器可以定时动态更新解释器和线程池单元的映射关系。

即当解释器对应的权重大于或等于第三预设值时,则更新设备将解释器对应的线程池单元更新为非公平锁管理的线程池单元。此时,管理线程池单元的为非公平锁,则可以保证权重高的解释器对应的线程池有可以充分使用的线程,达到快速响应的目的。

其中,解释器的权重大于或等于第三预设值,表明此时解释器的使用频率较高,对应的查询指令较多,将解释器对应的线程池单元更新为非公平锁管理的线程池单元,从而提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。非公平锁管理的线程池单元能够优先快速响应,从而避免因查询指令较多而执行花费大量的时间。

需要说明的时,第三预设值可以由本领域技术人员根据实际情况自行设定,本申请在此不作具体限定。

S104,若所述解释器对应的权重小于或等于第四预设值,则所述更新设备将所述解释器对应的线程池单元更新为公平锁管理的线程池单元。

在本申请实施例中,参考图4所示,为本申请实施例提供的一种更新解释器和线程池单元的对应关系的具体的应用场景的步骤图,其中,负反馈定时器定时遍历系统中的定时器,判断解释器再一个时间段内都未调用执行,将解释器对应的权重减少一个值。

即当将权重减少到小于或等于第四预设值时,则更新设备将解释器对应的线程池单元更新为公平锁管理的线程池单元。

其中,解释器的权重小于或等于第四预设值,表明此时解释器的使用频率较低,对应的查询指令较少,解释器对应的线程池单元更新为公平锁管理的线程池单元,从而提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。公平锁单元管理的线程池可以减少系统开销,从而节省了系统资源。

需要说明的时,第四预设值可以由本领域技术人员根据实际情况自行设定,本申请在此不作具体限定。

本申请实施例提供了一种更新解释器和线程池单元的对应关系的方法,可以当解释器被使用时,更新设备将解释器对应的权重增加第一预设值;若解释器在预设时间内未被使用,则更新设备将解释器对应的权重减少第二预设值;若解释器对应的权重大于或等于第三预设值,则更新设备将解释器对应的线程池单元更新为非公平锁管理的线程池单元;若解释器对应的权重小于或等于第四预设值,则更新设备将解释器对应的线程池单元更新为公平锁管理的线程池单元。从而使用频率高的解释器对应着非公平锁管理的解释器,使用频率低的解释器对应着公平锁管理的解释器,提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。

参见图5,为本申请实施例提供的一种更新解释器和线程池单元的对应关系的装置的示意图。所述装置包括:

增加单元201,用于当解释器被使用时,则将所述解释器对应的权重增加第一预设值;

减少单元202,用于当所述解释器在预设时间内未被使用时,则将所述解释器对应的权重减少第二预设值;

第一更新单元203,用于当所述解释器对应的权重大于或等于第三预设值时,则将所述解释器对应的线程池单元更新为非公平锁管理的线程池单元;

第二更新单元204,用于当所述解释器对应的权重小于或等于第四预设值时,则将所述解释器对应的线程池单元更新为公平锁管理的线程池单元。

在一些实施方式中,所述增加单元,还包括:

指令获取单元,用于所述更新设备获取提交的查询指令以及所述查询指令对应的解释器;

执行单元,用于所述更新设备根据解释器-线程池映射表调用所述解释器对应的线程池单元以便所述线程池单元执行所述查询指令得到执行结果。

在一些实施方式中,所述查询指令采用结构化查询语言编写。

在一些实施方式中,所述执行单元,还用于根据解释器-线程池映射表调用所述解释器对应的线程池单元以便所述线程池单元根据所述查询指令从所述查询指令对应的数据库中查询得到执行结果。

在一些实施方式中,所述数据库包括:

Hbase数据库或mysql数据库。

其中,本申请装置各单元或模块的设置可以参照图1所示的方法而实现,在此不再赘述。

本申请实施例提供了一种更新解释器和线程池单元的对应关系的装置,可以当解释器被使用时,更新设备将解释器对应的权重增加第一预设值;若解释器在预设时间内未被使用,则更新设备将解释器对应的权重减少第二预设值;若解释器对应的权重大于或等于第三预设值,则更新设备将解释器对应的线程池单元更新为非公平锁管理的线程池单元;若解释器对应的权重小于或等于第四预设值,则更新设备将解释器对应的线程池单元更新为公平锁管理的线程池单元。从而使用频率高的解释器对应着非公平锁管理的解释器,使用频率低的解释器对应着公平锁管理的解释器,提高了解释器和线程池的适应性,使解释器和线程池的映射关系设置更为合理,能够更好的适应实际情况。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号