掌桥专利:专业的专利平台
掌桥专利
首页

一种针对消息中间件的调优方法及系统

文献发布时间:2023-06-19 10:00:31


一种针对消息中间件的调优方法及系统

技术领域

本发明涉及数据处理技术领域,特别涉及一种针对消息中间件的调优方法及系统。

背景技术

目前,发布者将想要进行发布的消息上传至消息中间件中,等待订阅者订阅,若有订阅者订阅,将对应的消息发送给订阅者。消息中间件一般将暂时没有订阅的消息放置在自身的数据缓存单元中,但是当数据缓存单元中存储的数据量超出消息中间件自身的存储能力时,严重降低了消息中间件的工作性能和工作效率,甚至还会使消息中间件崩溃而宕机。另外,工作人员需要对消息中间件的已存储数据量进行监管,人力成本较大。

发明内容

本发明目的之一在于提供了一种针对消息中间件的调优方法及系统,通过在缓存队列中的源数据超过预设的数据量阈值时,根据预设的转移机制确定缓存队列中哪些源数据需要进行转移并将其转移至对应的发布端,提升了消息中间件的工作性能和工作效率,避免了缓存队列中的数据量过多使消息中间件发生崩溃,同时,无需工作人员对消息中间件的已存储数据量进行监管,降低了人力成本。

本发明实施例提供的一种针对消息中间件的调优方法,包括:

将发布端发送的源数据存入预设的缓存队列中;

根据订阅端发送的订阅消息确定所述缓存队列中的源数据是否被订阅;

若所述源数据被订阅,将所述源数据发送到与所述订阅消息对应的订阅端,并统计所述缓存队列中剩余的所述源数据的数据量;

若所述数据量大于预设的数据量阈值,根据预设的转移机制确定所述缓存队列中需要进行转移的源数据并将其转移至对应的发布端。

优选地,所述将发布端发送的源数据存入预设的缓存队列中,包括:

获取预设的缓存队列;

根据预设的确定规则确定所述缓存队列中的空闲队列;

将所述源数据存入所述空闲队列的最前端。

优选地,所述根据订阅端发送的订阅消息确定所述缓存队列中的源数据是否被订阅,包括:

所述订阅消息包括:特征标识和目标路径;

分别计算所述缓存队列中的源数据与所述特征标识的总体匹配度,判定所述缓存队列中与所述特征标识总体匹配度最大的源数据为被订阅;

其中,计算所述缓存队列中一个源数据与所述特征标识的总体匹配度,包括:

对所述源数据进行特征提取后进行预处理获得获得第一向量集;

对所述特征标识进行所述预处理获得第二向量集;

基于所述第一向量集和所述第二向量集,计算所述源数据与所述特征标识的总体匹配度:

其中,

优选地,所述若所述源数据被订阅,将所述源数据发送到与所述订阅消息对应的订阅端,并统计所述缓存队列中剩余的所述源数据的数据量,包括:

若所述源数据被订阅,通过所述目标路径将所述源数据发送到与所述订阅消息对应的订阅端;

将所述源数据发送到与所述订阅消息对应的订阅端后,统计所述缓存队列剩余的所述源数据的数据量。

优选地,所述若所述数据量大于预设的数据量阈值,根据预设的转移机制确定所述缓存队列中需要进行转移的源数据并将其转移至对应的发布端,包括:

若所述数据量大于预设的数据量阈值,获取预设的转移机制;

所述转移机制包括:

当将发布端发送的源数据存入预设的缓存队列中时,预设的计时器开始计时,若所述源数据被订阅,所述计时器停止对所述源数据计时并删除与所述源数据对应的计时记录;

获取所述计时器对所述源数据的计时时长和所述源数据的数据大小;

基于所述计时时长和所述数据大小,计算所述源数据的评价指数:

其中,

将所述缓存队列中剩余的源数据按所述评价指数的大小从大到小进行排列组合成待筛选队列;

选取所述待筛选队列中前

获取与所述缓存队列中需要进行转移的源数据对应的原始路径;

通过所述原始路径将需要进行转移的源数据转移至与其对应的发布端。

本发明实施例提供的一种针对消息中间件的调优方法,还包括:

根据预设的判定规则确定是否成功将所述缓存队列中需要进行转移的源数据转移至与其对应的发布端;

若转移失败,将所述缓存队列中需要进行转移的源数据传输至预设的临时存储单元;

将发布端发送的源数据存入预设的缓存队列中采用预设的第一传输链路,将所述源数据发送到与所述订阅消息对应的订阅端采用预设的第二传输链路,将缓存队列中需要进行转移的源数据转移至对应的发布端采用预设的第三传输链路,将所述缓存队列中需要进行转移的源数据传输至预设的临时存储单元采用预设的第四传输链路;

每隔预设的时间间隔执行包括如下操作:

使用预设的第一探针对所述第一传输链路进行检测,检测开始时,预设的计时器开始计时,当接收到发布端发送的第一响应消息时,停止计时并读取所述计时器的第一时长,根据预设的映射关系确定所述第一时长的第一状态等级;

使用预设的第二探针对所述第二传输链路进行检测,检测开始时,所述计时器开始计时,当接收到订阅端发送的第二响应消息时,停止计时并读取所述计时器的第二时长,根据预设的映射关系确定所述第二时长的第二状态等级;

使用预设的第三探针对所述第三传输链路进行检测,检测开始时,所述计时器开始计时,当接收到发布端发送的第三响应消息时,停止计时并读取所述计时器的第三时长,根据预设的映射关系确定所述第三时长的第三状态等级;

使用预设的第四探针对所述第三传输链路进行检测,检测开始时,所述计时器开始计时,当接收到临时存储单元发送的第四响应消息时,停止计时并读取所述计时器的第四时长,根据预设的映射关系确定所述第四时长的第四状态等级;

若所述第一状态等级小于预设的评价等级阈值,调用预设的第一备用传输链路对所述第一传输链路进行替换;

和/或,

若所述第二状态等级小于预设的评价等级阈值,调用预设的第二备用传输链路对所述第二传输链路进行替换;

和/或,

若所述第三状态等级小于预设的评价等级阈值,调用预设的第三备用传输链路对所述第三传输链路进行替换;

和/或,

若所述第四状态等级小于预设的评价等级阈值,调用预设的第四备用传输链路对所述第四传输链路进行替换。

本发明实施例提供的一种针对消息中间件的调优系统,包括:

存入模块,用于将发布端发送的源数据存入预设的缓存队列中;

判断模块,用于根据订阅端发送的订阅消息确定所述缓存队列中的源数据是否被订阅;

发送与统计模块,用于若所述源数据被订阅,将所述源数据发送到与所述订阅消息对应的订阅端,并统计所述缓存队列中剩余的所述源数据的数据量;

转移模块,用于若所述数据量大于预设的数据量阈值,根据预设的转移机制确定所述缓存队列中需要进行转移的源数据并将其转移至对应的发布端。

优选地,所述存入模块执行包括如下操作:

获取预设的缓存队列;

根据预设的确定规则确定所述缓存队列中的空闲队列;

将所述源数据存入所述空闲队列的最前端。

优选地,所述判断模块执行包括如下操作:

所述订阅消息包括:特征标识和目标路径;

分别计算所述缓存队列中的源数据与所述特征标识的总体匹配度,判定所述缓存队列中与所述特征标识总体匹配度最大的源数据为被订阅;

其中,计算所述缓存队列中一个源数据与所述特征标识的总体匹配度,包括:

对所述源数据进行特征提取后进行预处理获得获得第一向量集;

对所述特征标识进行所述预处理获得第二向量集;

基于所述第一向量集和所述第二向量集,计算所述源数据与所述特征标识的总体匹配度:

其中,

优选地,所述发送与统计模块执行包括如下操作:

若所述源数据被订阅,通过所述目标路径将所述源数据发送到与所述订阅消息对应的订阅端;

将所述源数据发送到与所述订阅消息对应的订阅端后,统计所述缓存队列剩余的所述源数据的数据量。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例中一种针对消息中间件的调优方法的示意图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

本发明实施例提供了一种针对消息中间件的调优方法,如图1所示,包括:

S1、将发布端发送的源数据存入预设的缓存队列中;

S2、根据订阅端发送的订阅消息确定所述缓存队列中的源数据是否被订阅;

S3、若所述源数据被订阅,将所述源数据发送到与所述订阅消息对应的订阅端,并统计所述缓存队列中剩余的所述源数据的数据量;

S4、若所述数据量大于预设的数据量阈值,根据预设的转移机制确定所述缓存队列中需要进行转移的源数据并将其转移至对应的发布端。

上述技术方案的工作原理为:

将发布端发送的源数据在没有收到订阅端发送的对该源数据进行订阅的消息时,事先将其存入预设的缓存队列中;预设的缓存队列具体为消息中间件自身的数据缓存单元;根据订阅端发送的订阅消息确定缓存队列中的源数据是否被订阅,如果该订阅消息中有对源数据进行订阅的请求,则该源数据被订阅,否则没有被订阅;当确定缓存队列中的源数据被订阅时,将该源数据发送到与订阅消息对应的订阅端上,同时对缓存队列中剩余的源数据的数据量进行统计;当缓存队列中剩余的源数据超过预设的数据量阈值时,根据预设的转移机制确定缓存队列中哪些数据需要进行转移并将需要进行转移的源数据转移至与其对应的发布端上;预设的数据量阈值具体为消息中间件中的数据缓存单元即缓存队列存储过载的警戒值;预设的转移机制具体为预先设置好用于对缓存队列中哪些源数据需要进行转移进行判定的规则。

上述技术方案的有益效果为:本发明实施例通过在缓存队列中的源数据超过预设的数据量阈值时,根据预设的转移机制确定缓存队列中哪些源数据需要进行转移并将其转移至对应的发布端,提升了消息中间件的工作性能和工作效率,避免了缓存队列中的数据量过多使消息中间件发生崩溃,同时,无需工作人员对消息中间件的已存储数据量进行监管,降低了人力成本。

本发明实施例提供了一种针对消息中间件的调优方法,所述将发布端发送的源数据存入预设的缓存队列中,包括:

获取预设的缓存队列;

根据预设的确定规则确定所述缓存队列中的空闲队列;

将所述源数据存入所述空闲队列的最前端。

上述技术方案的工作原理为:

预设的确定规则具体为:根据缓存队列中的位置有无源数据存储判断其是否是空闲位置,将全部空闲位置排列组合成空闲队列;每当有新的源数据要存储到缓存队列中时,就将该源数据存入空闲队列的最前端;最前端具体为:当空闲队列为从上至下排序时,空闲队列中最上面的位置就是最前端;当空闲队列从左至右排序时,空闲队列中最左边的位置就是最前端。

上述技术方案的有益效果为:本发明实施例将新的要存入缓存队列中的源数据存入空闲队列的最前端,紧凑利用缓存队列中的空闲位置,提升了系统对源数据存入缓存队列的管理能力。

本发明实施例提供了一种针对消息中间件的调优方法,所述根据订阅端发送的订阅消息确定所述缓存队列中的源数据是否被订阅,包括:

所述订阅消息包括:特征标识和目标路径;

分别计算所述缓存队列中的源数据与所述特征标识的总体匹配度,判定所述缓存队列中与所述特征标识总体匹配度最大的源数据为被订阅;

其中,计算所述缓存队列中一个源数据与所述特征标识的总体匹配度,包括:

对所述源数据进行特征提取后进行预处理获得获得第一向量集;

对所述特征标识进行所述预处理获得第二向量集;

基于所述第一向量集和所述第二向量集,计算所述源数据与所述特征标识的总体匹配度:

其中,

上述技术方案的工作原理为:

订阅消息包含有:特征标识和目标路径;特征标识具体为:订阅主题的关键字等;特征提取具体为:提取源数据中的具有代表性的关键数据;例如:若源数据是文本数据,将源数据中的词按其出现的频率由高至低进行排序,选取前Q个词作为关键数据;预处理具体为:将特征提取后的源数据放置或特征标识在向量空间模型中;分别计算缓存队列中各个源数据与特征标识的总体相似度;选取与特征标识的总体相似度最大的源数据作为与订阅消息对应的被订阅源数据。

上述技术方案的有益效果为:本发明实施例分别计算缓存队列各个源数据与特征标识的总体相似度,判定与特征标识总体相似度最大的源数据是被订阅,提升了系统将缓存队列中的源数据与特征标识进行匹配的精准性,提升了系统的匹配能力。

本发明实施例提供了一种针对消息中间件的调优方法,所述若所述源数据被订阅,将所述源数据发送到与所述订阅消息对应的订阅端,并统计所述缓存队列中剩余的所述源数据的数据量,包括:

若所述源数据被订阅,通过所述目标路径将所述源数据发送到与所述订阅消息对应的订阅端;

将所述源数据发送到与所述订阅消息对应的订阅端后,统计所述缓存队列剩余的所述源数据的数据量。

上述技术方案的工作原理为:

订阅端发送的订阅消息中包含有目标路径,该目标路径是订阅端提供的自身的存储路径,想要将数据存入订阅端只要将要存的数据传输至目标路径即可;如果源数据被订阅,通过目标路径将被订阅的源数据发送到与订阅消息对应的订阅端;将被订阅的源数据发送到与订阅消息对应的订阅端后,立即对缓存队列中剩余的源数据的数据量进行统计。

上述技术方案的有益效果为:本发明实施例通过订阅端发送的订阅消息中的目标路径将被订阅的源数据传输至与订阅消息对应的订阅端,并对缓存队列中剩余的源数据的数据量进行统计,提升了将源数据发送到订阅其源数据的订阅端的精准性。

本发明实施例提供了一种针对消息中间件的调优方法,所述若所述数据量大于预设的数据量阈值,根据预设的转移机制确定所述缓存队列中需要进行转移的源数据并将其转移至对应的发布端,包括:

若所述数据量大于预设的数据量阈值,获取预设的转移机制;

所述转移机制包括:

当将发布端发送的源数据存入预设的缓存队列中时,预设的计时器开始计时,若所述源数据被订阅,所述计时器停止对所述源数据计时并删除与所述源数据对应的计时记录;

获取所述计时器对所述源数据的计时时长和所述源数据的数据大小;

基于所述计时时长和所述数据大小,计算所述源数据的评价指数:

其中,

将所述缓存队列中剩余的源数据按所述评价指数的大小从大到小进行排列组合成待筛选队列;

选取所述待筛选队列中前

获取与所述缓存队列中需要进行转移的源数据对应的原始路径;

通过所述原始路径将需要进行转移的源数据转移至与其对应的发布端。

上述技术方案的工作原理为:

当缓存队列中剩余源数据的数据量超过预设的数据量阈值时,说明缓存队列的存储能 力已经接近饱和;预设的计时器具体为:软件或硬件计时器;预设的转移机制具体为:当有 新的源数据存入缓存队列中时,计时器对源数据的存储时间开始计时,只有当源数据被订 阅时,计时器才会停止计时并删除计时记录,否则就一直计时;根据计时器对缓存队列中的 源数据的计时时长和源数据自身的数据大小并赋予它们对应的权重值计算源数据的评价 指数;计时时长越长说明该源数据一直未被订阅,数据大小越大越占缓存队列的存储空间; 将计时时长越大和数据大小越大的源数据作为优先转移的对象;根据评价指数将缓存队列 中的源数据进行排序组合获得待筛选队列;选取待筛选队列中前

上述技术方案的有益效果为:本发明实施例采用合理的转移机制确定缓存队列中需要进行转移的源数据并将其通过源数据的原始路径转移到对应的发布端中,提升了消息中间件的工作性能和工作效率,避免了缓存队列中的数据量过多使消息中间件发生崩溃,同时,无需工作人员对消息中间件的已存储数据量进行监管,降低了人力成本。

本发明实施例提供了一种针对消息中间件的调优方法,还包括:

根据预设的判定规则确定是否成功将所述缓存队列中需要进行转移的源数据转移至与其对应的发布端;

若转移失败,将所述缓存队列中需要进行转移的源数据传输至预设的临时存储单元;

将发布端发送的源数据存入预设的缓存队列中采用预设的第一传输链路,将所述源数据发送到与所述订阅消息对应的订阅端采用预设的第二传输链路,将缓存队列中需要进行转移的源数据转移至对应的发布端采用预设的第三传输链路,将所述缓存队列中需要进行转移的源数据传输至预设的临时存储单元采用预设的第四传输链路;

每隔预设的时间间隔执行包括如下操作:

使用预设的第一探针对所述第一传输链路进行检测,检测开始时,预设的计时器开始计时,当接收到发布端发送的第一响应消息时,停止计时并读取所述计时器的第一时长,根据预设的映射关系确定所述第一时长的第一状态等级;

使用预设的第二探针对所述第二传输链路进行检测,检测开始时,所述计时器开始计时,当接收到订阅端发送的第二响应消息时,停止计时并读取所述计时器的第二时长,根据预设的映射关系确定所述第二时长的第二状态等级;

使用预设的第三探针对所述第三传输链路进行检测,检测开始时,所述计时器开始计时,当接收到发布端发送的第三响应消息时,停止计时并读取所述计时器的第三时长,根据预设的映射关系确定所述第三时长的第三状态等级;

使用预设的第四探针对所述第三传输链路进行检测,检测开始时,所述计时器开始计时,当接收到临时存储单元发送的第四响应消息时,停止计时并读取所述计时器的第四时长,根据预设的映射关系确定所述第四时长的第四状态等级;

若所述第一状态等级小于预设的评价等级阈值,调用预设的第一备用传输链路对所述第一传输链路进行替换;

和/或,

若所述第二状态等级小于预设的评价等级阈值,调用预设的第二备用传输链路对所述第二传输链路进行替换;

和/或,

若所述第三状态等级小于预设的评价等级阈值,调用预设的第三备用传输链路对所述第三传输链路进行替换;

和/或,

若所述第四状态等级小于预设的评价等级阈值,调用预设的第四备用传输链路对所述第四传输链路进行替换。

上述技术方案的工作原理为:

预设的判定规则具体为:判断将源数据通过原始路径发送到发布端时,发布端是否会 发送一个响应信号,该响应信号代表着源数据已经成功转移至目标端;预设的临时存储单 元具体为用于存储缓存队列中需要进行转移但是暂时未能进行转移的源数据设置的存储 区;预设的第一传输链路、第二传输链路、第三传输链路和第四传输链路具体为整个系统各 个数据进行传输的链路;预设的映射关系具体为根据得到响应的时间确定其属于哪个响应 快慢程度等级区间从而可以确定当前链路的响应快慢程度等级;例如:1

上述技术方案的有益效果为:本发明实施例通过探针对链路进行检测并将响应时间根据映射关系确定响应快慢等级,将该响应快慢等级与预设的评价等级阈值进行比较,确定链路的工作状态是否正常,若不正常,还可以使用备用链路对其进行更换,提升了系统各级间数据传输的稳定性和速率,提升了对链路的管理能力,同时,也更加智能化。

本发明实施例提供了一种针对消息中间件的调优方法,还包括:

获取预设历史数据库中的历史运行数据,所述历史运行数据包括:预设时间段内各探针的检测记录;

基于所述历史运行数据确定各探针的性能评价指数:

其中,

基于所述性能评价指数对当前的所述时间间隔进行调整:

其中,

上述技术方案的工作原理为:根据各探针的检测记录计算其对应的性能评价指数,基于各探针的性能评价指数、历史数据库中的记录总数、各探针性能评价指数对应的预设指标值(供用户设定)、误差系数(优选取1.0001),并赋予相应的权重值(供用户设定)对当前的时间间隔进行调整;例如:当各探针性能下降时,应调大时间间隔,缓解各探针的检测压力,反之,当各探针性能上升时,应调小时间间隔,提升其工作效率;当数据库中的记录越来越大时,说明各探针的性能评价指数越准确,因为性能评价指数是根据记录得到。

上述技术方案的有益效果为:本发明实施例通过基于历史数据计算各探针的性能评价指数,对各探针当前工作能力进行评价,并合理地对时间间隔进行自适应调整,提升了系统的工作效率,不用人工进行监测探针工作能力后调整时间间隔,大大减轻了人工成本,同时,也更加智能化。

本发明实施例提供了一种针对消息中间件的调优系统,包括:

存入模块,用于将发布端发送的源数据存入预设的缓存队列中;

判断模块,用于根据订阅端发送的订阅消息确定所述缓存队列中的源数据是否被订阅;

发送与统计模块,用于若所述源数据被订阅,将所述源数据发送到与所述订阅消息对应的订阅端,并统计所述缓存队列中剩余的所述源数据的数据量;

转移模块,用于若所述数据量大于预设的数据量阈值,根据预设的转移机制确定所述缓存队列中需要进行转移的源数据并将其转移至对应的发布端。

上述技术方案的工作原理为:

将发布端发送的源数据在没有收到订阅端发送的对该源数据进行订阅的消息时,事先将其存入预设的缓存队列中;预设的缓存队列具体为消息中间件自身的数据缓存单元;根据订阅端发送的订阅消息确定缓存队列中的源数据是否被订阅,如果该订阅消息中有对源数据进行订阅的请求,则该源数据被订阅,否则没有被订阅;当确定缓存队列中的源数据被订阅时,将该源数据发送到与订阅消息对应的订阅端上,同时对缓存队列中剩余的源数据的数据量进行统计;当缓存队列中剩余的源数据超过预设的数据量阈值时,根据预设的转移机制确定缓存队列中哪些数据需要进行转移并将需要进行转移的源数据转移至与其对应的发布端上;预设的数据量阈值具体为消息中间件中的数据缓存单元即缓存队列存储过载的警戒值;预设的转移机制具体为预先设置好用于对缓存队列中哪些源数据需要进行转移进行判定的规则。

上述技术方案的有益效果为:本发明实施例通过在缓存队列中的源数据超过预设的数据量阈值时,根据预设的转移机制确定缓存队列中哪些源数据需要进行转移并将其转移至对应的发布端,提升了消息中间件的工作性能和工作效率,避免了缓存队列中的数据量过多使消息中间件发生崩溃,同时,无需工作人员对消息中间件的已存储数据量进行监管,降低了人力成本。

本发明实施例提供了一种针对消息中间件的调优系统,所述存入模块执行包括如下操作:

获取预设的缓存队列;

根据预设的确定规则确定所述缓存队列中的空闲队列;

将所述源数据存入所述空闲队列的最前端。

上述技术方案的工作原理为:

预设的确定规则具体为:根据缓存队列中的位置有无源数据存储判断其是否是空闲位置,将全部空闲位置排列组合成空闲队列;每当有新的源数据要存储到缓存队列中时,就将该源数据存入空闲队列的最前端;最前端具体为:当空闲队列为从上至下排序时,空闲队列中最上面的位置就是最前端;当空闲队列从左至右排序时,空闲队列中最左边的位置就是最前端。

上述技术方案的有益效果为:本发明实施例将新的要存入缓存队列中的源数据存入空闲队列的最前端,紧凑利用缓存队列中的空闲位置,提升了系统对源数据存入缓存队列的管理能力。

本发明实施例提供了一种针对消息中间件的调优系统,所述判断模块执行包括如下操作:

所述订阅消息包括:特征标识和目标路径;

分别计算所述缓存队列中的源数据与所述特征标识的总体匹配度,判定所述缓存队列中与所述特征标识总体匹配度最大的源数据为被订阅;

其中,计算所述缓存队列中一个源数据与所述特征标识的总体匹配度,包括:

对所述源数据进行特征提取后进行预处理获得获得第一向量集;

对所述特征标识进行所述预处理获得第二向量集;

基于所述第一向量集和所述第二向量集,计算所述源数据与所述特征标识的总体匹配度:

其中,

上述技术方案的工作原理为:

订阅消息包含有:特征标识和目标路径;特征标识具体为:订阅主题的关键字等;特征提取具体为:提取源数据中的具有代表性的关键数据;例如:若源数据是文本数据,将源数据中的词按其出现的频率由高至低进行排序,选取前Q个词作为关键数据;预处理具体为:将特征提取后的源数据放置或特征标识在向量空间模型中;分别计算缓存队列中各个源数据与特征标识的总体相似度;选取与特征标识的总体相似度最大的源数据作为与订阅消息对应的被订阅源数据。

上述技术方案的有益效果为:本发明实施例分别计算缓存队列各个源数据与特征标识的总体相似度,判定与特征标识总体相似度最大的源数据是被订阅,提升了系统将缓存队列中的源数据与特征标识进行匹配的精准性,提升了系统的匹配能力。

本发明实施例提供了一种针对消息中间件的调优系统,所述发送与统计模块执行包括如下操作:

若所述源数据被订阅,通过所述目标路径将所述源数据发送到与所述订阅消息对应的订阅端;

将所述源数据发送到与所述订阅消息对应的订阅端后,统计所述缓存队列剩余的所述源数据的数据量。

上述技术方案的工作原理为:

订阅端发送的订阅消息中包含有目标路径,该目标路径是订阅端提供的自身的存储路径,想要将数据存入订阅端只要将要存的数据传输至目标路径即可;如果源数据被订阅,通过目标路径将被订阅的源数据发送到与订阅消息对应的订阅端;将被订阅的源数据发送到与订阅消息对应的订阅端后,立即对缓存队列中剩余的源数据的数据量进行统计。

上述技术方案的有益效果为:本发明实施例通过订阅端发送的订阅消息中的目标路径将被订阅的源数据传输至与订阅消息对应的订阅端,并对缓存队列中剩余的源数据的数据量进行统计,提升了将源数据发送到订阅其源数据的订阅端的精准性。

本发明实施例提供了一种针对消息中间件的调优系统,所述转移模块执行包括如下操作:

若所述数据量大于预设的数据量阈值,获取预设的转移机制;

所述转移机制包括:

当将发布端发送的源数据存入预设的缓存队列中时,预设的计时器开始计时,若所述源数据被订阅,所述计时器停止对所述源数据计时并删除与所述源数据对应的计时记录;

获取所述计时器对所述源数据的计时时长和所述源数据的数据大小;

基于所述计时时长和所述数据大小,计算所述源数据的评价指数:

其中,

将所述缓存队列中剩余的源数据按所述评价指数的大小从大到小进行排列组合成待筛选队列;

选取所述待筛选队列中前

获取与所述缓存队列中需要进行转移的源数据对应的原始路径;

通过所述原始路径将需要进行转移的源数据转移至与其对应的发布端。

上述技术方案的工作原理为:

当缓存队列中剩余源数据的数据量超过预设的数据量阈值时,说明缓存队列的存储能 力已经接近饱和;预设的计时器具体为:软件或硬件计时器;预设的转移机制具体为:当有 新的源数据存入缓存队列中时,计时器对源数据的存储时间开始计时,只有当源数据被订 阅时,计时器才会停止计时并删除计时记录,否则就一直计时;根据计时器对缓存队列中的 源数据的计时时长和源数据自身的数据大小并赋予它们对应的权重值计算源数据的评价 指数;计时时长越长说明该源数据一直未被订阅,数据大小越大越占缓存队列的存储空间; 将计时时长越大和数据大小越大的源数据作为优先转移的对象;根据评价指数将缓存队列 中的源数据进行排序组合获得待筛选队列;选取待筛选队列中前

上述技术方案的有益效果为:本发明实施例采用合理的转移机制确定缓存队列中需要进行转移的源数据并将其通过源数据的原始路径转移到对应的发布端中,提升了消息中间件的工作性能和工作效率,避免了缓存队列中的数据量过多使消息中间件发生崩溃,同时,无需工作人员对消息中间件的已存储数据量进行监管,降低了人力成本。

本发明实施例提供了一种针对消息中间件的调优系统,还包括:

控制中心,用于根据预设的判定规则确定是否成功将所述缓存队列中需要进行转移的源数据转移至与其对应的发布端;

若转移失败,将所述缓存队列中需要进行转移的源数据传输至预设的临时存储单元;

将发布端发送的源数据存入预设的缓存队列中采用预设的第一传输链路,将所述源数据发送到与所述订阅消息对应的订阅端采用预设的第二传输链路,将缓存队列中需要进行转移的源数据转移至对应的发布端采用预设的第三传输链路,将所述缓存队列中需要进行转移的源数据传输至预设的临时存储单元采用预设的第四传输链路;

所述控制中心每隔预设的时间间隔执行还包括如下操作:

使用预设的第一探针对所述第一传输链路进行检测,检测开始时,预设的计时器开始计时,当接收到发布端发送的第一响应消息时,停止计时并读取所述计时器的第一时长,根据预设的映射关系确定所述第一时长的第一状态等级;

使用预设的第二探针对所述第二传输链路进行检测,检测开始时,所述计时器开始计时,当接收到订阅端发送的第二响应消息时,停止计时并读取所述计时器的第二时长,根据预设的映射关系确定所述第二时长的第二状态等级;

使用预设的第三探针对所述第三传输链路进行检测,检测开始时,所述计时器开始计时,当接收到发布端发送的第三响应消息时,停止计时并读取所述计时器的第三时长,根据预设的映射关系确定所述第三时长的第三状态等级;

使用预设的第四探针对所述第三传输链路进行检测,检测开始时,所述计时器开始计时,当接收到临时存储单元发送的第四响应消息时,停止计时并读取所述计时器的第四时长,根据预设的映射关系确定所述第四时长的第四状态等级;

若所述第一状态等级小于预设的评价等级阈值,调用预设的第一备用传输链路对所述第一传输链路进行替换;

和/或,

若所述第二状态等级小于预设的评价等级阈值,调用预设的第二备用传输链路对所述第二传输链路进行替换;

和/或,

若所述第三状态等级小于预设的评价等级阈值,调用预设的第三备用传输链路对所述第三传输链路进行替换;

和/或,

若所述第四状态等级小于预设的评价等级阈值,调用预设的第四备用传输链路对所述第四传输链路进行替换。

上述技术方案的工作原理为:

预设的判定规则具体为:判断将源数据通过原始路径发送到发布端时,发布端是否会 发送一个响应信号,该响应信号代表着源数据已经成功转移至目标端;预设的临时存储单 元具体为用于存储缓存队列中需要进行转移但是暂时未能进行转移的源数据设置的存储 区;预设的第一传输链路、第二传输链路、第三传输链路和第四传输链路具体为整个系统各 个数据进行传输的链路;预设的映射关系具体为根据得到响应的时间确定其属于哪个响应 快慢程度等级区间从而可以确定当前链路的响应快慢程度等级;例如:1

上述技术方案的有益效果为:本发明实施例通过探针对链路进行检测并将响应时间根据映射关系确定响应快慢等级,将该响应快慢等级与预设的评价等级阈值进行比较,确定链路的工作状态是否正常,若不正常,还可以使用备用链路对其进行更换,提升了系统各级间数据传输的稳定性和速率,提升了对链路的管理能力,同时,也更加智能化。

本发明实施例提供了一种针对消息中间件的调优系统,还包括:

自适应调整模块,用于根据各探针的性能对所述时间间隔进行自适应调整;

所述自适应调整模块执行包括如下操作:

获取预设历史数据库中的历史运行数据,所述历史运行数据包括:预设时间段内各探针的检测记录;

基于所述历史运行数据确定各探针的性能评价指数:

其中,

基于所述性能评价指数对当前的所述时间间隔进行调整:

其中,

上述技术方案的工作原理为:根据各探针的检测记录计算其对应的性能评价指数,基于各探针的性能评价指数、历史数据库中的记录总数、各探针性能评价指数对应的预设指标值(供用户设定)、误差系数(优选取1.0001),并赋予相应的权重值(供用户设定)对当前的时间间隔进行调整;例如:当各探针性能下降时,应调大时间间隔,缓解各探针的检测压力,反之,当各探针性能上升时,应调小时间间隔,提升其工作效率;当数据库中的记录越来越大时,说明各探针的性能评价指数越准确,因为性能评价指数是根据记录得到。

上述技术方案的有益效果为:本发明实施例通过基于历史数据计算各探针的性能评价指数,对各探针当前工作能力进行评价,并合理地对时间间隔进行自适应调整,提升了系统的工作效率,不用人工进行监测探针工作能力后调整时间间隔,大大减轻了人工成本,同时,也更加智能化。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

相关技术
  • 一种针对消息中间件的调优方法及系统
  • 消息中间件的调优方法、系统、电子设备及存储介质
技术分类

06120112381001