CN113590357A - 连接池的调整方法、装置、计算机设备及存储介质 - Google Patents
连接池的调整方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN113590357A CN113590357A CN202110878453.4A CN202110878453A CN113590357A CN 113590357 A CN113590357 A CN 113590357A CN 202110878453 A CN202110878453 A CN 202110878453A CN 113590357 A CN113590357 A CN 113590357A
- Authority
- CN
- China
- Prior art keywords
- flow
- connection pool
- connection
- determining
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000004590 computer program Methods 0.000 claims description 18
- 238000012216 screening Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- 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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种连接池的调整方法、装置、计算机设备及存储介质。所述方法包括:获取当前单位时间内的流量波动曲线、当前时刻流量值以及当前单位时间的流量变化幅度;确定当前时刻流量值在流量波动曲线上的切线斜率;再根据切线斜率、当前时刻流量值以及当前单位时间的流量变化幅度从预设的样本流量波动曲线中确定目标流量点;根据目标流量点在样本流量波动曲线中的位置确定下一单位时间的流量变化幅度;根据下一单位时间的流量变化幅度和预设的流量变化幅度与连接池变化幅度的对应关系,确定连接池变化幅度;最后根据该连接池变化幅度对对应的连接池进行调整。本方案中的连接池可以根据实时流量的变化对连接池进行动态调整。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种连接池的调整方法、装置、计算机设备及存储介质。
背景技术
数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。一个数据库连接对象均对应一个物理数据库连接,每次操作都打开一个物理连接,使用完都关闭连接,这样造成***的性能低下。
为了解决上述问题,现有技术为***提供连接池,连接池的解决方案是在应用程序启动时建立足够的连接,并讲这些连接组成一个连接池(简单说:在一个“池”里放了好多半成品的联接对象),由应用程序动态地对池中的连接进行申请、使用和释放。对于多于连接池中连接数的并发请求,应该在请求队列中排队等待。
连接池技术尽可能多地重用了消耗内存地资源,大大节省了内存,提高了服务器的服务效率,能够支持更多的客户服务。通过使用连接池,将大大提高程序运行效率。
但是,由于现有技术的连接池是静态配置的,在使用过程中,其最大连接数以及最小连接数是固定不变的,最小连接数是连接池一直保持的数据库连接,所以如果应用程序对连接的使用量不大,将会有大量的连接资源被浪费;最大连接数是连接池能申请的最大连接数,如果数据库连接请求超过此数,后面的数据库连接请求将被加入到等待队列中,这会影响之后客户端对的数据库操作,导致用户访问受限。现亟需一种可以动态调整连接池的方法,以解决上述问题。
发明内容
本发明实施例提供了一种连接池的调整方法、装置、计算机设备及存储介质,可以对连接池进行动态调整。
第一方面,本发明实施例提供了一种连接池的调整方法,其包括:
获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;
确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;
根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;
根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;
根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;
根据所述第二连接池变化幅度对对应的连接池进行调整。
第二方面,本发明实施例还提供了一种连接池的调整装置,其包括:
第一获取单元,用于获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;
第一确定单元,用于确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;
第二确定单元,用于根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;
第三确定单元,用于根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;
第四确定单元,用于根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;
第一调整单元,用于根据所述第二连接池变化幅度对对应的连接池进行调整。
第三方面,本发明实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上述方法。
本发明实施例提供了一种连接池的调整方法、装置、计算机设备及存储介质。其中,所述方法包括:首先获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;然后确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;再根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;最后根据所述第二连接池变化幅度对对应的连接池进行调整。本方案中的连接池可以根据实时流量的变化对连接池进行动态调整,减少了由于连接池中的连接没被使用而导致的连接资源被浪费,以及由于连接池上限导致的用户访问受限的问题发生。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的连接池的调整方法的应用场景示意图;
图2为本发明实施例提供的连接池的调整方法的流程示意图;
图3为本发明实施例提供的连接池的调整方法的一个子流程示意图;
图4为本发明实施例提供的连接池的调整方法的一个子流程示意图;
图5为本发明实施例提供的连接池的调整装置的示意性框图;
图6为本发明另一实施例提供的连接池的调整装置的示意性框图;以及
图7为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本发明实施例提供了一种连接池的调整方法、装置、计算机设备及存储介质。
该连接池的调整方法的执行主体可以是本发明实施例提供的连接池的调整装置,或者集成了该连接池的调整装置的计算机设备,其中,该连接池的调整装置可以采用硬件或者软件的方式实现,该计算机设备可以为服务器。
请参阅图1,图1为本发明实施例提供的连接池的调整方法的应用场景示意图。该连接池的调整方法应用于图1中的计算机设备10中,该连接池可以设置在该计算机设备10中,该计算机设备10获取当前单位时间内的流量波动曲线、当前时刻流量值以及当前单位时间的第一流量变化幅度;然后确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;并将该切线斜率、当前时刻流量值以及第一流量变化幅度输入预设的预估模型中,并通过该预估模型中预设的样本流量波动曲线中确定目标流量点;并根据目标流量点在样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;以及根据第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;最后根据第二连接池变化幅度对对应的连接池进行调整。
其中,本实施例中的连接池可以为数据库连接池或者HTTP连接池。
以下以服务器作为执行主体为例,对本实施例中的连接池的调整方法进行详细说明,图2是本发明实施例提供的连接池的调整方法的流程示意图。如图2所示,该方法包括以下步骤S110-160。
S110、获取当前单位时间内的流量波动曲线、当前时刻流量值以及当前单位时间的第一流量变化幅度。
本实施例中,单位时间的时间长度可以为5分钟,也可以为其他时间长度,具体数值可以视实际情况进行调整,当前单位时间为当前时刻往前单位时间长度内的时间,流量波动曲线由当前单位时间内每个时刻(例如每秒)的流量值构成,其横轴可以表示时间,纵轴可以为流量值,当前单位时间的第一流量变化幅度为当前单位时间内最大流量值与最小流量值的差值,其中,本实施例中的流量值可以从服务器的流量日志中获取,本实施例中的流量可以为客户端访问服务器的访问量,具体可以表现为服务器中应用程序对连接的调用量。
其中,本实施例可以预设调整周期,每间隔一个调整周期就对本实施例的连接池进行一次调整,当前时刻为对连接池进行调整时刻,调整周期的时间长度可以为单位时间的时间长度,也可以比单位时间长度长,或者比单位时间长度短,具体此处不做限定。
S120、确定当前时刻流量值在流量波动曲线上的切线斜率。
本实施例中,切线斜率可以反应流量的走向,本实施例在确定流量波动曲线之后,为了获取流量的走向,此时需要获取当前时刻的切线斜率。
S130、根据切线斜率、当前时刻流量值以及第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点。
具体地,在一些实施例中,步骤S130包括:将切线斜率、当前时刻流量值以及第一流量变化幅度输入预设的预估模型,然后预估模型通过预设的样本流量波动曲线中确定目标流量点,即步骤S130通过预设的预估模型进行处理,其中,本实施例中的预估模型具体可以为点击通过率(Click ThroughRate,CTR)预估模型。
需要说明的是,本实施例在进行使用连接池的调整方法之前,需要首先对上述预设的预估模型进行训练,以构建预估模型中的样本流量波动曲线(“时间-样本流量”的对应关系)以及流量变化幅度与第一连接池变化幅度的对应关系等,具体训练方法如下:
其中,预设的样本流量波动曲线以时间为横轴,流量值为纵轴,其流量值为在服务器线上环境采集的历史流量数据的,其中,预设的样本流量波动曲线的横轴时间长度可以为1天,也可以为1周或1个月,具体此处不做限定。
当横轴时间长度为1天时,此时可以获取连续多天的历史流量数据,然后根据每条同一时间的平均流量数据构建样本流量波动曲线;当横轴时间长度为1周时,此时可以获取连续多周的历史流量数据,然后根据每周同一时间的平均流量数据构建样本流量波动曲线;当横轴时间长度为1个月时,此时可以获取连续多个月的历史流量数据,然后根据每个月同一时间的平均流量数据构建样本流量波动曲线。
需要说明的是,当得到了样本流量波动曲线之后,需要根据样本流量波动曲线中的流量模拟线上环境,使用模拟的线上环境对连接池进行压力测试(当连接池不能承受当前流量时,则修改连接池大小,以适应当前流量),得到模拟线上环境对应的每个时刻的连接池大小(包括最大连接数大小以及最小连接处大小),进而得到“时间-连接池大小”的对应关系,然后根据“时间-样本流量”的对应关系以及“时间-连接池大小”的对应关系,得到“样本流量-连接池大小”的对应关系,进而得到“流量变化幅度与连接池变化幅度”的对应关系,其中,流量变化幅度为单位时间内的流量变化幅度,对应地,连接池变化幅度也为单位时间内的连接池变化幅度。
在一些实施例中,可能存在一个流量变化幅度对应多个连接池变化幅度的情况。
其中,当获取了样本流量波动曲线以及流量变化幅度与第一连接池变化幅度的对应关系之后,可以将数据记录在Elasticsearch这样的搜索服务器中,维护好数据之间的索引关系,借助搜索服务器的搜索和数据分析的能力来提高预估模型的搜索计算能力。
在一些实施例中,具体地,如图3所示,步骤S130包括:
S131、从预设的样本流量波动曲线中确定与切线斜率对应的多个样本流量点。
即从预设的样本流量波动曲线上确定与该切线斜率相同的坐标点,一般情况下,由于样本流量波动曲线的波动性,会存在多个与切线斜率对应的坐标点,即存在多个样本流量点。
S132、根据当前时刻流量值以及第一流量变化幅度对多个样本流量点进行筛选处理,得到目标流量点。
由于有些样本流量点虽然斜率相同,但是其值与当前时刻的流量值存在较大的误差,或者样本流量点对应的单位时间流量变化与当前单位时间的流量变化幅度存在较大的误差,此时,则需要对得到的多个样本流量点进行筛选,具体如下:
在样本流量波动曲线上获取各样本流量点的样本流量值,将各样本流量值中与当前时刻流量值的差超过流量阈值的样本流量点进行滤除处理;以及在样本流量波动曲线上获取各样本流量点对应的样本单位时间流量变化幅度,将样本单位时间流量变化幅度与当前单位时间的流量变化幅度的差超过幅度阈值的样本流量点进行滤除处理,将滤除后的流量点确定为目标流量点,其中,计算出来的目标流量点可能为1个也可能为多个。
S140、根据目标流量点在样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度。
在一些实施例中,具体地,步骤S140包括:在上述预设的预估模型中,根据目标流量点在样本流量波动曲线中的位置确定第二流量变化幅度,其中,第二流量变化幅度为下一单位时间对应的流量变化幅度。
当目标流量点只有一个时,此时,以该目标流量点在样本流量波动曲线中的位置的横坐标确定为当前样本单位时间的坐标,将该样本流量波动曲线中当前样本单位时间的坐标的下一个单位时间确定为下一单位时间,然后获取下一单位时间内样本流量波动曲线中的最大流量值以及最小流量值,将该最大流量值以及最小流量值的差作为下一单位时间的流量变化幅度。
当目标流量点有多个时,此时需要针对每个目标流量点根据上述方案分别确定每个目标流量点的下一单位时间的流量变化幅度,得到多个下一单位时间的流量变化幅度,即得到多个第二流量变化幅度。
S150、根据第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度。
在一些实施例中,具体地,步骤S150包括:在上述预设的预估模型中,根据第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度。
此时,将预设的流量变化幅度与第一连接池变化幅度的对应关系中与第二流量变化幅度的幅度值对应的连接池变化幅度确定为下一单位时间的连接池变化幅度。
在一些实施例中,当存在有多个下一单位时间的流量变化幅度的情况和/或存在一个流量变化幅度对应多个连接池变化幅度的情况时,此时下一单位时间的连接池变化幅度也有多个,其中连接池变化幅度包括:最大连接数变化幅度以及最小连接数变化幅度,即本实施例可以得到多组第二连接池变化幅度。
所以,当目标流量点有多个时,根据下一单位时间的流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度之后,还需要从多个连接池变化幅度中确定目标连接池变化幅度,在一些实施例中,确定目标连接池变化幅度的方法为:根据预设的冗余权重值与多个下一单位时间的连接池变化幅度的中位数确定下一单位时间的目标连接池变化幅度;
其中,该冗余权重值可以为1.01,也可以为其他数值,具体数据可根据实际应用场景制定,具体地,首先对多个第二连接池变化幅度进行排序,然后在排序后的第二连接池变化幅度中确定第二连接池变化幅度的中位数,最后将冗余权重值乘以该中位数得到目标连接池变化幅度,此时,后续需要根据下一单位时间的目标连接池变化幅度对连接池进行调整。
S160、根据第二连接池变化幅度对对应的连接池进行调整。
当第二连接池变化幅度有多个时,需要根据下一单位时间的目标连接池变化幅度标对对应的连接池进行调整,其中,对应的连接池为需要对本实施例中的流量进行处理的连接池。
在一些实施例中,具体地,如图4所示,步骤S160包括:
S161、根据第二连接池变化幅度以及连接池的连接数确定连接池的目标连接数。
在一些实施例中,具体地,步骤S161包括:根据第二连接池变化幅度中的最大连接数变化幅度以及连接池的最大连接数确定目标最大连接数;并且根据第二连接池变化幅度中的最小连接数变化幅度以及连接池的最小连接数确定目标最小连接数。
S162、根据目标连接数对连接池进行调整。
具体地,步骤S162包括:将连接池的最大连接数调整为目标最大连接数;并且将连接池的最小连接数调整为目标最小连接数。
在一些实施例中,根据第二连接池变化幅度对对应的连接池进行调整之后,方法还包括:对上述预设的预估模型进行优化训练,使其能够根据实时访问流量的变化更加精准地分析计算连接池变化幅度,使得连接池调整更加合理。其中,具体的优化训练过程如下:
根据预设的连接数与流量的对应关系,确定调整后的连接池在下一单位时间内的流量预估数量;获取下一单位时间内的流量实际数量;确定流量实际数量与流量预估数量的流量差值;根据流量差值以及预设的调整量对冗余权重进行调整,以实现对上述预设的预估模型的优化训练,其中,根据流量差值以及预设的单位调整量对冗余权重进行调整,包括:若流量差值的绝对值大于预设的差值阈值,且流量实际数量大于流量预估数量,则根据单位调整量对冗余权重值进行向下调整;若流量差值的绝对值大于预设的差值阈值,且流量实际数量小于流量预估数量,则根据单位调整量对冗余权重值进行向上调整。
本实施例中,当发现流量差值的绝对值大于预设的流量差值(例如50流量)时,才需要对冗余权重进行调整,并且每次调整的大小为单位调整量,其中,该单位调整量可以为0.01,也可以为其他数值,具体此处不做限定,例如,当前的冗余权重为1.02,根据单位调整量对该冗余权重值向上之后,该冗余权重值为1.03,根据单位调整量对该冗余权重值向下调整之后,该冗余权重值为1.01。
为了便于理解,下面描述一个连接池的调整方法的在股票交易下的应用场景,因为股票交易时段集中在工作日的9:30-11:30、13:00-15:00这四个小时中,在此时间段内应用往往有较高的流量访问,其余时间相对较少,在股票交易期间,***需要满足高可用、低延时等要求,***运行呈现中高负荷状态;其他时间支持线上流量即可,如果期间连接池的最大连接数以及最小连接数一直保持不变的话,很有可能导致在繁忙时段流量超过连接池上限,导致用户访问受限,而在闲暇时段,由于访问量比较少,所以很有可能出现,用户访问量比连接池最小连接数小的情况,导致***资源的浪费,所以,需要应用本方案的连接池的调整方法,根据实时流量对连接池进行调整,避免出现上述情况,可以自适应流量变化调整连接池参数来调整本身处理请求的能力,可以高效、快捷地满足线上流量压力,使***平稳运行,合理利用***资源。
本实施例中,首先获取当前单位时间内的流量波动曲线、当前时刻流量值以及当前单位时间的第一流量变化幅度;然后确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;再根据切线斜率、当前时刻流量值以及第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;根据目标流量点在样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;根据第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;最后根据第二连接池变化幅度对对应的连接池进行调整。本方案中的连接池可以根据实时流量的变化对连接池进行动态调整,减少了由于连接池中的连接没被使用而导致的连接资源被浪费,以及由于连接池上限导致的用户访问受限的问题发生。
图5是本发明实施例提供的一种连接池的调整装置的示意性框图。如图5所示,对应于以上连接池的调整方法,本发明还提供一种连接池的调整装置。该连接池的调整装置包括用于执行上述连接池的调整方法的单元。具体地,请参阅图5,该连接池的调整装置包括第一获取单元501、第一确定单元502、第二确定单元503、第三确定单元504、第四确定单元505以及第一调整单元506,其中;
第一获取单元501,用于获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;
第一确定单元502,用于确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;
第二确定单元503,用于根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;
第三确定单元504,用于根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;
第四确定单元505,用于根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;
第一调整单元506,用于根据所述第二连接池变化幅度对对应的连接池进行调整。
在一些实施例中,所述第二确定单元503具体用于:
从所述预设的样本流量波动曲线中确定与所述切线斜率对应的多个样本流量点;
根据所述当前时刻流量值以及所述第一流量变化幅度对所述多个样本流量点进行筛选处理,得到所述目标流量点。
在一些实施例中,所述第一调整单元506具体用于:
根据所述第二连接池变化幅度以及所述连接池的连接数确定所述连接池的目标连接数;
根据所述目标连接数对所述连接池进行调整。
在一些实施例中,所述第一调整单元506进一步具体用于:
根据所述第二连接池变化幅度中的最大连接数变化幅度以及所述连接池的最大连接数确定目标最大连接数;
根据所述第二连接池变化幅度中的最小连接数变化幅度以及所述连接池的最小连接数确定目标最小连接数。
在一些实施例中,所述第一调整单元506进一步具体用于:
将所述连接池的最大连接数调整为所述目标最大连接数;
将所述连接池的最小连接数调整为所述目标最小连接数。
图6是本发明另一实施例提供的一种连接池的调整装置的示意性框图。如图6所示,本实施例的连接池的调整装置是上述实施例的基础上增加了第五确定单元507、第六确定单元508、第二获取单元509以及第二调整单元510。
第五确定单元507,用于根据预设的冗余权重值与多个所述第二连接池变化幅度的中位数确定第二目标连接池变化幅度;
此时,所述第一调整单元506具体用于:
根据所述下一单位时间的目标连接池变化幅度对所述连接池进行调整。
第六确定单元508,用于根据预设的连接数与流量的对应关系,确定调整后的所述连接池在下一单位时间内的流量预估数量;
第七确定单元509,用于确定所述流量实际数量与所述流量预估数量的流量差值;
第二调整单元510,用于根据所述流量差值以及预设的调整量对所述冗余权重进行调整。
在一些实施例中,所述第二调整单元510具体用于:
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量大于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向下调整;
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量小于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向上调整。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述连接池的调整装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述连接池的调整装置可以实现为一种计算机程序的形式,该计算机程序可以在如图7所示的计算机设备上运行。
请参阅图7,图7是本发明实施例提供的一种计算机设备的示意性框图。该计算机设备700可以是服务器。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图7,该计算机设备700包括通过***总线701连接的处理器702、存储器和网络接口705,其中,存储器可以包括非易失性存储介质703和内存储器704。
该非易失性存储介质703可存储操作***7031和计算机程序7032。该计算机程序7032包括程序指令,该程序指令被执行时,可使得处理器702执行一种连接池的调整方法。
该处理器702用于提供计算和控制能力,以支撑整个计算机设备700的运行。
该内存储器704为非易失性存储介质703中的计算机程序7032的运行提供环境,该计算机程序7032被处理器702执行时,可使得处理器702执行一种连接池的调整方法。
该网络接口705用于与其它设备进行网络通信。本领域技术人员可以理解,图7中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备700的限定,具体的计算机设备700可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器702用于运行存储在存储器中的计算机程序7032,以实现如下步骤:
获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;
确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;
根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;
根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;
根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;
根据所述第二连接池变化幅度对对应的连接池进行调整。
在一些实施例中,处理器702在实现所述根据所述切线斜率、所述当前时刻流量值以及所第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点步骤时,具体实现如下步骤:
从所述预设的样本流量波动曲线中确定与所述切线斜率对应的多个样本流量点;
根据所述当前时刻流量值以及所述第一流量变化幅度对所述多个样本流量点进行筛选处理,得到所述目标流量点。
在一些实施例中,处理器702在实现所述根据所述第二连接池变化幅度对对应的连接池进行调整步骤时,具体实现如下步骤:
根据所述第二连接池变化幅度以及所述连接池的连接数确定所述连接池的目标连接数;
根据所述目标连接数对所述连接池进行调整。
在一些实施例中,处理器702在实现所述根据所述第二连接池变化幅度以及所述连接池的连接数确定所述连接池的目标连接数步骤时,具体实现如下步骤:
根据所述第二连接池变化幅度中的最大连接数变化幅度以及所述连接池的最大连接数确定目标最大连接数;
根据所述第二连接池变化幅度中的最小连接数变化幅度以及所述连接池的最小连接数确定目标最小连接数。
将所述连接池的最大连接数调整为所述目标最大连接数;
将所述连接池的最小连接数调整为所述目标最小连接数。
在一些实施例中,所述第二连接池变化幅度包括目标连接池变化幅度,当所述目标流量点有多个时,处理器702在实现所述根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度步骤之后,具体实现如下步骤:
根据预设的冗余权重值与多个所述第二连接池变化幅度的中位数确定下一单位时间的目标连接池变化幅度;
此时,处理器702在实现所述根据所述第二连接池变化幅度对对应的连接池进行调整步骤时,具体实现如下步骤:
根据所述下一单位时间的目标连接池变化幅度对所述连接池进行调整。
在一些实施例中,处理器702在实现所述根据所述下一单位时间的目标连接池变化幅度对所述连接池进行调整步骤之后,具体实现如下步骤:
根据预设的连接数与流量的对应关系,确定调整后的所述连接池在下一单位时间内的流量预估数量;
获取下一单位时间内的流量实际数量;
确定所述流量实际数量与所述流量预估数量的流量差值;
根据所述流量差值以及预设的调整量对所述冗余权重进行调整。
在一些实施例中,处理器702在实现所述根据所述流量差值以及预设的单位调整量对所述冗余权重进行调整步骤时,具体实现如下步骤:
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量大于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向下调整;
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量小于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向上调整。
根据所述下一单位时间内的流量实际数量以及所述下一单位时间内的流量预估数量对所述冗余权重值进行调整。
应当理解,在本发明实施例中,处理器702可以是中央处理单元(CentralProcessing Unit,CPU),该处理器702还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机***中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时使处理器执行如下步骤:
获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;
确定所述当前单位时间内的流量波动曲线在当前时第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;
根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;
根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;
根据所述第二连接池变化幅度对对应的连接池进行调整。
在一些实施例中,所述处理器在执行所述程序指令而实现所述根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点步骤时,具体实现如下步骤:
从所述预设的样本流量波动曲线中确定与所述切线斜率对应的多个样本流量点;
根据所述当前时刻流量值以及所述第一流量变化幅度对所述多个样本流量点进行筛选处理,得到所述目标流量点。
在一些实施例中,所述处理器在执行所述程序指令而实现所述根据所述第二连接池变化幅度对对应的连接池进行调整步骤时,具体实现如下步骤:
根据所述第二连接池变化幅度以及所述连接池的连接数确定所述连接池的目标连接数;
根据所述目标连接数对所述连接池进行调整。
在一些实施例中,所述处理器在执行所述程序指令而实现所述根据所述第二连接池变化幅度以及所述连接池的连接数确定所述连接池的目标连接数步骤时,具体实现如下步骤:
根据所述第二连接池变化幅度中的最大连接数变化幅度以及所述连接池的最大连接数确定目标最大连接数;
根据所述第二连接池变化幅度中的最小连接数变化幅度以及所述连接池的最小连接数确定目标最小连接数。
将所述连接池的最大连接数调整为所述目标最大连接数;
将所述连接池的最小连接数调整为所述目标最小连接数。
在一些实施例中,所述第二连接池变化幅度包括目标连接池变化幅度,当所述目标流量点有多个时,所述处理器在执行所述程序指令而实现所述根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度步骤之后,具体实现如下步骤:
根据预设的冗余权重值与多个所述第二连接池变化幅度的中位数确定下一单位时间的目标连接池变化幅度;
此时,所述处理器在执行所述程序指令而实现所述根据所述第二连接池变化幅度对对应的连接池进行调整步骤时,具体实现如下步骤:
根据所述下一单位时间的目标连接池变化幅度对所述连接池进行调整。
在一些实施例中,所述处理器在执行所述程序指令而实现所述根据所述下一单位时间的目标连接池变化幅度对所述连接池进行调整步骤之后,具体实现如下步骤:
根据预设的连接数与流量的对应关系,确定调整后的所述连接池在下一单位时间内的流量预估数量;
获取下一单位时间内的流量实际数量;
确定所述流量实际数量与所述流量预估数量的流量差值;
根据所述流量差值以及预设的调整量对所述冗余权重进行调整。
在一些实施例中,所述处理器在执行所述根据所述流量差值以及预设的单位调整量对所述冗余权重进行调整步骤时,具体实现如下步骤:
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量大于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向下调整;
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量小于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向上调整。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种连接池的调整方法,其特征在于,包括:
获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;
确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;
根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;
根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;
根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;
根据所述第二连接池变化幅度对对应的连接池进行调整。
2.根据权利要求1所述的方法,其特征在于,所述根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点,包括:
从所述预设的样本流量波动曲线中确定与所述切线斜率对应的多个样本流量点;
根据所述当前时刻流量值以及所述第一流量变化幅度对所述多个样本流量点进行筛选处理,得到所述目标流量点。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第二连接池变化幅度对对应的连接池进行调整,包括:
根据所述第二连接池变化幅度以及所述连接池的连接数确定所述连接池的目标连接数;
根据所述目标连接数对所述连接池进行调整。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第二连接池变化幅度以及所述连接池的连接数确定所述连接池的目标连接数,根据所述目标连接数对所述连接池进行调整,包括:
根据所述第二连接池变化幅度中的最大连接数变化幅度以及所述连接池的最大连接数确定目标最大连接数;
根据所述第二连接池变化幅度中的最小连接数变化幅度以及所述连接池的最小连接数确定目标最小连接数;
将所述连接池的最大连接数调整为所述目标最大连接数;
将所述连接池的最小连接数调整为所述目标最小连接数。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述第二连接池变化幅度包括目标连接池变化幅度,当所述目标流量点有多个时,所述根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度之后,所述方法还包括:
根据预设的冗余权重值与多个所述第二连接池变化幅度的中位数确定下一单位时间的目标连接池变化幅度;
根据所述下一单位时间的目标连接池变化幅度对所述连接池进行调整。
6.根据权利要求5所述的方法,其特征在于,所述根据所述下一单位时间的目标连接池变化幅度对所述连接池进行调整之后,所述方法还包括:
根据预设的连接数与流量的对应关系,确定调整后的所述连接池在下一单位时间内的流量预估数量;
获取下一单位时间内的流量实际数量;
确定所述流量实际数量与所述流量预估数量的流量差值;
根据所述流量差值以及预设的调整量对所述冗余权重进行调整。
7.根据权利要求6所述的方法,其特征在于,所述根据所述流量差值以及预设的单位调整量对所述冗余权重进行调整,包括:
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量大于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向下调整;
若所述流量差值的绝对值大于预设的差值阈值,且所述流量实际数量小于所述流量预估数量,则根据所述单位调整量对所述冗余权重值进行向上调整。
8.一种连接池的调整装置,其特征在于,包括:
第一获取单元,用于获取当前单位时间内的流量波动曲线、当前时刻流量值以及所述当前单位时间的第一流量变化幅度;
第一确定单元,用于确定所述当前时刻流量值在所述流量波动曲线上的切线斜率;
第二确定单元,用于根据所述切线斜率、所述当前时刻流量值以及所述第一流量变化幅度从预设的样本流量波动曲线中确定目标流量点;
第三确定单元,用于根据所述目标流量点在所述样本流量波动曲线中的位置确定下一单位时间的第二流量变化幅度;
第四确定单元,用于根据所述第二流量变化幅度和预设的流量变化幅度与第一连接池变化幅度的对应关系,确定下一单位时间的第二连接池变化幅度;
第一调整单元,用于根据所述第二连接池变化幅度对对应的连接池进行调整。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110878453.4A CN113590357A (zh) | 2021-07-30 | 2021-07-30 | 连接池的调整方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110878453.4A CN113590357A (zh) | 2021-07-30 | 2021-07-30 | 连接池的调整方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113590357A true CN113590357A (zh) | 2021-11-02 |
Family
ID=78253429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110878453.4A Pending CN113590357A (zh) | 2021-07-30 | 2021-07-30 | 连接池的调整方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113590357A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115396313A (zh) * | 2022-08-22 | 2022-11-25 | 度小满科技(北京)有限公司 | 通信方法、装置、存储介质及电子装置 |
-
2021
- 2021-07-30 CN CN202110878453.4A patent/CN113590357A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115396313A (zh) * | 2022-08-22 | 2022-11-25 | 度小满科技(北京)有限公司 | 通信方法、装置、存储介质及电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108089921B (zh) | 用于云端大数据运算架构的服务器及其运算资源最佳化方法 | |
US8387059B2 (en) | Black-box performance control for high-volume throughput-centric systems | |
US7937257B2 (en) | Estimating performance of application based on automatic resizing of shared memory for messaging | |
CN107592345B (zh) | 交易限流装置、方法及交易*** | |
CN109298990B (zh) | 日志存储方法、装置、计算机设备及存储介质 | |
CN111026553B (zh) | 离线混部作业的资源调度方法及服务器*** | |
US8756307B1 (en) | Translating service level objectives to system metrics | |
CN110896357B (zh) | 流量预测方法、装置和计算机可读存储介质 | |
CN109002424B (zh) | 文件格式转换方法、装置、计算机设备及存储介质 | |
US9851988B1 (en) | Recommending computer sizes for automatically scalable computer groups | |
CN112181664A (zh) | 负载均衡方法及装置、计算机可读存储介质及电子设备 | |
Choi et al. | An enhanced data-locality-aware task scheduling algorithm for hadoop applications | |
CN113590357A (zh) | 连接池的调整方法、装置、计算机设备及存储介质 | |
CN112967091A (zh) | 营销服务事件的智能分发方法、***及存储介质 | |
CN115878329A (zh) | 宿主机资源调度方法、装置、电子设备和存储介质 | |
CN113485833B (zh) | 资源预测方法和装置 | |
CN114518948A (zh) | 面向大规模微服务应用的动态感知重调度的方法及应用 | |
CN113467525A (zh) | 接口调用流量控制方法及装置 | |
CN113205230A (zh) | 基于模型集合的数据预测方法、装置、设备及存储介质 | |
CN111966490A (zh) | 一种Spark分区负载均衡方法 | |
CN116382892B (zh) | 一种基于多云融合以及云服务的负载均衡方法及装置 | |
CN108900865B (zh) | 服务器、转码任务的调度方法及执行方法 | |
CN112631771B (zh) | 一种大数据***的并行处理方法 | |
Hanczewski et al. | A Multiparameter Analytical Model of the Physical Infrastructure of a Cloud-Based System | |
CN111258729B (zh) | 基于Redis的任务分配方法、装置、计算机设备及存储介质 |
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 |